第二次单击时的 jQuery 不起作用 - 移动设备

Posted

技术标签:

【中文标题】第二次单击时的 jQuery 不起作用 - 移动设备【英文标题】:jQuery on second click doesn't work - mobile 【发布时间】:2014-01-14 01:40:09 【问题描述】:

在您说与其他主题重复之前,我已经看到了该主题,例如:

jQuery: trigger click() doesn't work?

jQuery .on Click second time not working

Jquery Onclick not happening second time

one Jquery is not working on the second click

这些都没有帮助我。 我的代码很简单:

index.php

/* in body tag */

<input type="button" id="page-add" value="Add" data-role="none"/>

/* after body tag */
$(function()
    $("#page-add").click(function(e)
        window.location.href = 'add.php';   
    );
);

添加.php

/* in body tag */
<div class="ui-btn-left"><a href="index.php"><img src="images/logo.png"/></a></div>

"page-add" onClick event 按钮第一次工作,当我点击&lt;a href&gt; 并返回 index.php,如果我再次点击同一个按钮,它就不再工作了。我必须刷新页面才能再次工作。

我尝试在window.location.href 之前添加代码e.preventDefault(),但也没有用。我在控制台上没有收到任何错误。

我做错了什么?

编辑:已解决。

$(document).on('pagebeforeshow', '#main', function()     
    $('#page-add').bind('click',function()
        $.mobile.changePage('add.php');
    );
);

【问题讨论】:

你能为我们做一个jsFiddle吗? :) 我想..但是可以用两个分开的页面来摆弄? 如果您只是转到另一个页面,您如何“再次单击同一按钮”?您的问题需要更详细的解释。 是的,只是给出一些网站的网址,比如 www.google.com 是的,我刚刚转到另一个页面。但是当我点击另一个页面(add.php)的&lt;a href&gt;时,我又回到了原来的那个index.php。 【参考方案1】:

尝试 jQuery on 函数,

$( "element" ).on( "click", function() 
alert("clicked");
);

【讨论】:

【参考方案2】:

使用按钮的 Onclick 事件调用函数 尝试类似的东西

index.php

/* in body tag */

<input type="button" id="page-add" onclick='addFunction();' value="Add" data-role="none"/>

/* after body tag */
function addFunction() 
        window.location.href = 'add.php';   

add.php

/* in body tag */
<div class="ui-btn-left"><a href="index.php"><img src="images/logo.png"/></a></div>

【讨论】:

你的意思是function addfunction ()window.location.href = 'add.php';。对吗? 使用您的代码,当我第二次点击时收到:Uncaught ReferenceError: addFunction is not defined

以上是关于第二次单击时的 jQuery 不起作用 - 移动设备的主要内容,如果未能解决你的问题,请参考以下文章

Jquery:我的课程在第二次通话期间不起作用

从 jQuery 对 Mathjax 排版函数的第二次调用不起作用

带有 jQ​​uery UI 对话框、拼写检查和按钮在第二次单击时不起作用的 CKEditor

Jquery移动按钮点击角落不起作用

Jquery .remove() 仅在第二次点击时起作用

React setState 在第一次尝试时不起作用,但在第二次尝试时起作用?