javascript - jquery mobile,使用 .live() 或 .bind() 在导航上执行 ajax 的正确方法

标签 javascript jquery html mobile

我有一个这样的导航栏

      <div id="top" data-role="navbar" data-type="horizontal">
            <ul>
            <li><a href="#a">A</a></li>
            <li><a href="#b">B</a></li>
            <li><a href="#c">C</a></li>
            <li><a href="#d">D</a></li>
            </ul>
        </div>

我有一个 <div id="content">例如

然后我添加我的javascript

<script language="javascript">
$('div[id="top"] ul li a').live("click", function(e) {
    e.stopImmediatePropagation();
    e.preventDefault();
    var html = //SOME HTML
    var content = $('div[id="content"]');
    $(content).html(html);
});
</script>

但是,它只起作用,即,如果我点击按钮两次,将 div 内容更改为我的 HTML,如果我点击一次,它只会给我默认页面。知道如何纠正它吗?

我在这里创建一个 fiddle 供您测试 http://jsfiddle.net/3Rcem/

我找到了使用 .click() 而不是 .live('click') 的解决方案,但是我无法绑定(bind)到 Jquery mobile 建议的 'vclick',任何人都可以帮助我使用 live 吗?

最佳答案

我不知道为什么,但是当我改变了.live("click",.click(它工作正常。

顺便说一句:$('div[id="content"]')是不正确的。你应该做 $('div#content')可能只是$('#content') .

还有这个:<script language="javascript">不正确,应该是:<script type="text/javascript"> .

关于javascript - jquery mobile,使用 .live() 或 .bind() 在导航上执行 ajax 的正确方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7902481/

相关文章:

javascript - Resig的JS继承脚本...父类的属性被覆盖

javascript - 返回数组中带有父元素的单个子元素

javascript - 如何获取用户输入的选定房间并将其乘以两个日期之间的天数差异?

javascript - 单击 <li> 时,将 <li> 中的值拉入 &lt;textarea&gt;

ruby - 在 Rails 3 应用程序中调用 .ajax 方法时出现 401 Unauthorized

html - 页脚文本在 IE10 中突出显示蓝色?

javascript - 从浏览器运行 cmd - 通过 JS

javascript - AngularJS 自定义指令 : how to update parent variable specified in ng-model?

javascript - 如何让 Flask 滚动到页面的一部分?

java - 如何在 JAVA 中用新代码更新 HTML Header 和指定的 Div