【问题标题】:Click event not firing on a listview in jquery mobile单击事件未在 jquery mobile 中的列表视图上触发
【发布时间】:2011-07-29 08:50:44
【问题描述】:

我有一个通过 ajax 填充列表的 jquery mobile 1.0b1 网站。

列表填充后我调用

$('#theResults').listview();

生成的 HTML 包含链接,每个链接都有一个“sresult”类 - 下面是一个示例

<li><a class='sresult' href="#addResult">

                    <h3>title</h3>

                    <p>some content</p>


            </a></li>

现在我有一个实时函数,理论上应该将点击事件绑定到这些项目。它可以在 Firefox 中找到...但是在我的 iPhone 上的 safari 上,点击事件不会触发

        $('.sresult').live('click', function(event) {
            event.preventDefault();
            alert("i'm running!");
        });

【问题讨论】:

  • 你错过了一个时期:$('.sresult')
  • 是的,我的 stackoverflow 条目中有一个错字……它没有解决问题……我在上面更新了我的问题。不过眼光不错
  • 现在我添加了 href='javascript:stub()' 并添加了一个名为 stub 的函数,它什么都不做。这似乎允许事件附加到 iPhone 上……作为一种解决方案,它有点糟糕。我想知道如何正确地做到这一点

标签: jquery listview click jquery-mobile


【解决方案1】:

试试 vclick(搜索 vclick http://jquerymobile.com/demos/1.0b1/docs/api/globalconfig.html

$('.sresult').live('vclick', function(event) {
    event.preventDefault();
    alert("i'm running!");
});

而不是

$('.sresult').live('click', function(event) {
    event.preventDefault();
    alert("i'm running!");
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-06-25
    • 1970-01-01
    • 2015-06-23
    • 2023-03-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-28
    相关资源
    最近更新 更多