jQuery   发布时间:2022-03-30  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了jQuery Mobile 1.1.0 RC1在iOS Safari中修改AJAX帖子的HREF大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_772_0@
@H_772_0@
免责声明:我使用的是jQuery Mobile 1.1.0 RC1,它还不是一个稳定的版本.我有一个链接需要发布一个 AJAX请求并返一个 JSON响应,但是当点击该链接时,似乎jQuery Mobile将HREF更改为iPhone上iOS Safari中的哈希(#).在使用iPhone用户代理的浏览器中进行测试时,它不会执行此操作.这是我的基本HTML和JS来显示我的内容

<a href="javascript:void()" class="outlink" data="/link/to/ajaxpost/">Send Ajax @R_489_10613@est</a>

和JS

$('#tab a').on('click',function(E){
        var $this = $(this);
        var jsonUrl = $this.attr("href");
        alert(jsonUrl);

        $.mobile.showPageLoadingMsg();

        $.ajax({
            type: "POST",url: jsonUrl,success: function(data) {
                $.mobile.hidePageLoadingMsg();
                alert(data);
            }
        });
        return false; 
});

“jsonUrl”的值变为“#”(而不是我的ajax请求的url),然后data变量的值返回整个页面,而不是我想要的JSON Feed.奇怪的是,这只发生在iPhone上的iOS Safari中.它工作正常,当我在OSX Safari或Firefox中尝试使用不同用户代理的jQuery Mobile站点时,JSON提要会回来.

我已经尝试将rel =“external”和data-type =“ajax”添加链接中,但它没有修复它.我也在使用jQuery Mobile 1.1.0 RC1,但我不确定这是不是问题,或者我是不是正确使用jQuery Mobile.我的代码中也没有任何其他jQuery Mobile特定的JS,所以也许我错过了一些可以解决这个问题的东西.感谢帮助.

解决方法

代替:

$this.attr('href')

用这个

$this.data('href') || $this.attr('href')

jQuery Mobile 1.1.0RC1和on(包括发布的1.1.0)将href设置为点击时#的任何链接,并将href存储在data-href属性中,直到完成它为止,然后将其放回去.它只在iOS Mobile Safari上执行此操作.

我已经在博客上写了更多关于这一点,链接到相关的github问题讨论和一些关于在Ruby on Rails jQuery UJS上应用它的信息:

http://scottwb.com/blog/2012/06/29/jquery-mobile-breaks-your-hrefs-on-ios-mobile-safari/

@H_772_0@

大佬总结

以上是大佬教程为你收集整理的jQuery Mobile 1.1.0 RC1在iOS Safari中修改AJAX帖子的HREF全部内容,希望文章能够帮你解决jQuery Mobile 1.1.0 RC1在iOS Safari中修改AJAX帖子的HREF所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签:11.1.0ajaxhrefiosjquerymobilercrc1safari修改帖子
猜你在找的jQuery相关文章
其他相关热搜词更多
phpJavaPython程序员load如何string使用参数jquery开发安装listlinuxiosandroid工具javascriptcap