使用JS onclick函数的UIWebView性能

时间:2012-05-06 23:46:50

标签: javascript ios performance uiwebview

我有一个相当大的页面显示在UIWebView中(大约150 <article>s有一些文本,在<section>s中分隔)。我想用JS(我使用jQuery)做这样的事情:

$('article').click(function() {alert('hi');});

问题是,运行该代码需要花费很长时间(在iPad 3上点击2秒左右)。

如何提高效果?

我使用的是最新版本的XCode和iOS 5.1。

2 个答案:

答案 0 :(得分:1)

我使用了this answer的班级SingleTapDetector,以及以下代码:

new SingleTapDetector(window, function(e) {
  alert($(e.srcElement).text()); //show the text of the element that was tapped
});

然后很容易看出该元素是article,还是$(e.srcElement).closest('article')之类的东西(因为我的文章有<p>个段落。)

答案 1 :(得分:0)

我建议您尝试在窗口对象上放置一个click事件,然后验证这是否是<article>标记。这是一个例子:

$(window).click(function(e){
    var e = e || event;
    if(e.srcElement.tagName==ARTICLE)
        alert('hi');
});