我的网页存在问题。 我认为这就是这个问题:https://stackoverflow.com/questions/24350594/jqm-pageshow-event-firing-number-of-times-on-page-visit
每次我回去进入我的页面(使用pageshow)它会再次加载所有内容(如我所愿),但如果我进入3次,4次或更多次,似乎我有两页或更多页面。因此,每次按下按钮将数据发送到服务器时,它都会执行多次(我出去并进入该网页的次数)
每次进入内部时我都需要重新加载整个页面,所以我不能用它来代替:
$(document).on("pageshow", '#activity', function() {
我也尝试过:
$(document).off("pageshow", '#activity').on("pageshow", '#activity', function() {
但似乎没有用。
每次外出时都有办法消除网页吗?我只想要一份副本
答案 0 :(得分:1)
要添加绑定/附加监听器(例如click
,change
等),它们应放在pagecreate
事件内,因为它每页触发一次。该事件相当于.ready()
。
$(document).on("pagecreate", '#activity', function() {
/* listeners */
$("#foo").on("change", function () {
$.ajax();
});
});
使用pageshow
/ pagecontainershow
及类似的事件来操纵DOM或执行其他功能。
jQM 1.3
$(document).on("pageshow", '#activity', function() {
/* manipulate DOM */
$("#foo").removeClass("bar");
/* run functions */
$.doSomething();
});
jQM 1.4
$(document).on("pagecontainershow", function(e, data) {
if(data.toPage[0].id == "activity") {
/* manipulate DOM */
$("#foo", data.toPage).removeClass("bar");
/* run functions */
$.doSomething();
}
});