jquerymobile弹出功能在onClick中不起作用

时间:2013-01-21 11:32:49

标签: javascript jquery cordova jquery-mobile

我有:

<div data-role="page" class="type-interior">
    <div data-role="content" class="ui-body">
        <a href="#transitionExample" data-role="button" data-rel="popup">
          Pop Up
        </a>
        <div data-role="popup" id="transitionExample">This is a POP UP.</div>
        <a href=# onClick="$('transitionExample').popup('open')"
        data-rel="popup">OpenPopUp</a>
    </div>
</div>

如果我点击Button It Works,但如果我使用Javascript方法.popup('open'),则没有任何反应。 Popup没有显示。

发生了什么事? 我使用JqueryMobile 1.2.0和JQuery 1.8.2。

2 个答案:

答案 0 :(得分:5)

$('transitionExample').popup('open')

应该是

$('#transitionExample').popup('open')

有关详细信息,请参阅:http://api.jquery.com/id-selector/

然后你最好在.ready()中绑定你的链接,你应该尽量避免Javascript中的DOM代码以获得更好的可维护性。

 <a href='#' id='myButton' data-rel="popup">OpenPopUp</a>

以及<script></script>代码

之间
$(function () {
    $("#myButton").click(function () {
        $('#transitionExample').popup('open');
    });
});

答案 1 :(得分:0)

我遇到了这个线程,同时试图找到完全相同行为的原因 - 点击data-rel ='popup'链接工作但是popup()方法没有显示任何内容。经过多次挫折之后,我终于发现问题归结于我编码

的事实
$('#popupid').popup(open)

没有引用!没有人抱怨 - Chrome没有抛出错误,但弹出电话没有做任何事情。

希望有一天这会帮助别人。