gpt4 book ai didi

javascript - Jquery mobile - 为什么点击按钮时会出现ajax调用?

转载 作者:行者123 更新时间:2023-11-28 07:54:26 24 4
gpt4 key购买 nike

我的 Jquery 移动代码有问题。当我点击按钮时,它会将我重定向到另一个页面,但是当我检查 Firebug 控制台时,有 ajax 调用: GET http://www.example.com/cz/cs/7_kontakty.html 200 确定 162 毫秒。

代码:

{literal}
<script type="text/javascript">
// turn off Ajax (no compability with jQuery functions)
$(document).on("mobileinit", function () {
$.mobile.ajaxEnabled = false;
});
</script>
{/literal}
<div class="menu-top" style="margin: 0 auto; text-align: center;" >
<a class="globe" href="http://www.example.com/{$country}/{$lang}/7_kontakty.html?do=mob_countries" data-role="button" data-inline="true"><img width="37px" src="/css/globe_menu.png" alt="globe" /></a>
<a class="message" href="http://www.example.com/{$country}/{$lang}/7_kontakty.html" data-role="button" data-inline="true"><img width="37px" src="http://www.example.com/css/message.png" alt="message" /></a>
</div>

最佳答案

如果您想在 jQuery mobile 中关闭 AJAX 导航,则需要确保在原型(prototype)上将 $.mobile.ajaxEnabled 属性设置为 false 之前您在 jQuery Mobile 中加载。

换句话说,您需要做的事情如下:

...
<script type="text/javascript" src="//[cdn or your local path to jQuery goes here]" />
...
<script type="text/javascript">
$(document).on("mobileinit", function() { $.mobile.ajaxEnabled = false; });
</script>
...
<script type="text/javascript" src="//[cdn or your local path to jQuery Mobile goes here]" />

这是有效的,因为您直接更改原型(prototype)(将其视为设置变量),这不需要加载库。初始化时,该库将查找 $.mobile 原型(prototype)上的设置,并使用这些设置来确定是否打开 AJAX 导航。


如果您想更改更多设置,就像我在个人网站上所做的那样,您可以执行以下操作:

$(document).on("mobileinit", function() { $.extend( $.mobile, { ajaxEnabled: !1, defaultPageTransition: "none" }) });


因为在一个额外的 JS 文件中加载对性能的影响非常小,所以我更喜欢将移动设置放在一个单独的文件中,只是为了在浏览源代码时保持整洁(个人喜好)。如果您想查看禁用 AJAX 导航的工作示例,可以查看 my personal site 的源代码.

关于javascript - Jquery mobile - 为什么点击按钮时会出现ajax调用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26281580/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com