使用jQuery-mobile.js开发移动端网站踩坑记录

问题1:页面的 a 链接跳转会发生异常,原页面会拼接在新页面最后

原因:JQM会将所有的指向页面的链接转换为 ajax 请求

解决:给 a 标签单独添加 data-ajax="false" ,禁用当前 a 标签指定链接使用 ajax 请求

           全局设定(需在jquery.js引入后,jquery-mobile.js引入前)

 $(document).bind("mobileinit", function () {
               $.mobile.ajaxLinksEnabled = false;
               $.mobile.ajaxEnabled=false;
         });

问题2:跳转页面会自动返回顶部,导致锚链接跳转无法定位

原因:JQM页面跳转会自动执行 silentScroll() 方法,设定垂直滚动条高度为 0

解决:更改 jquery-mobile.js,阻止执行 silentScroll() 方法,如 return false。

不是最完美的解决办法,但可以暂时实现需求。

....
    // Scroll page vertically: scroll to 0 to hide iOS address bar, or pass a Y value
    silentScroll: function( ypos ) {
        if ( $.type( ypos ) !== "number" ) {
            ypos = $.mobile.defaultHomeScroll;
        }

        // prevent scrollstart and scrollstop events
        $.event.special.scrollstart.enabled = false;

        setTimeout(function() {
            window.scrollTo( 0, ypos );
            $.mobile.document.trigger( "silentscroll", { x: 0, y: ypos });
        }, 20 );

        setTimeout(function() {
            $.event.special.scrollstart.enabled = true;
        }, 150 );
    },
...

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
这个错误通常是由于在使用 jQuery TableSorter 插件时出现了问题。根据报错信息,错误发生在 `multisort` 函数的第 638 行,指示无法读取未定义的属性 `'type'`。 我无法提供具体的解决方案,因为我没有你的代码或更多的上下文信息。但是,以下是一些可能的原因和解决方案: 1. 确保正确加载了 jQuery 和 TableSorter 插件。在你的 HTML 文件中,确保先引入 jQuery 库,然后再引入 TableSorter 插件。例如: ```html <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script> <script src="path/to/jquery.tablesorter.js"></script> ``` 2. 检查 jQuery 和 TableSorter 的版本兼容性。确保使用的 TableSorter 插件版本与你的 jQuery 版本兼容。有时,不同版本的插件可能需要特定版本的 jQuery 才能正常工作。你可以查看 TableSorter 插件的文档或官方网站,了解它所需的最低 jQuery 版本。 3. 确保正确初始化 TableSorter 插件。在加载完 TableSorter 插件之后,在你的 JavaScript 代码中使用以下方式初始化 TableSorter: ```javascript $(document).ready(function() { // 选择要应用 TableSorter 的表格,并调用 tablesorter() 方法 $("#your-table-id").tablesorter(); }); ``` 请将上述代码中的 `#your-table-id` 替换为你实际需要应用 TableSorter 插件的表格的 ID 或选择器。 如果以上解决方案都不能解决问题,请提供更多关于你的代码和环境的详细信息,以便我能够更好地帮助你解决这个问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值