Метод JavaScript getClientRects поддерживается на iPhone? - PullRequest
1 голос
/ 31 октября 2009

Попытка найти самый верхний видимый элемент в UIWebView. Для этого я использую метод JS, который прекрасно работает в Safari, но никогда не выполняется после метода getClientRects при выполнении из UIWebView. Интересующие меня элементы - это все class="h".

Вот javascript, который вызывается из [webView stringByEvaluatingJavaScriptFromString:@"findTopElement()"];

Javascript:

function findTopElement() {
 var pars = document.getElementsByClassName("h");
 alert("findingTopElement: num pars:" + pars.length);
 for (var i = 0; i < pars.length; i++) {
  var para = pars[i];
  alert("checking par " + para.id);
  var rects = para.getClientRects();
  alert("checking rects " + rects.length);
  for (var j = 0; j < rects.length; j++) {
   var r = rects[j];
   if (r.top > 0 && r.bottom > 0) {
    alert("success: " + para.id);
    return para.id;
   }
  }
 }
 return -1;
}

Возможно ли, что функция getClientRects элемента не поддерживается в UIWebView?

1 Ответ

0 голосов
/ 31 октября 2009

Может пока не поддерживаться UIWebView.

Похоже, он был недавно добавлен в Safari, поэтому UIWebView может не поддерживать его.

Может быть, есть другой способ поймать эту бабочку?

http://sideshowbarker.net/?p=45

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...