jQuery Mobile操作HTML5的常用函数总结(5)

// 返回: false var isRel = $.mobile.path.isRelativeUrl("http://foo.com/a/file.html"); // 返回: true var isRel = $.mobile.path.isRelativeUrl("//foo.com/a/file.html"); // 返回: true var isRel = $.mobile.path.isRelativeUrl("/a/file.html"); // 返回: true var isRel = $.mobile.path.isRelativeUrl("file.html"); // 返回: true var isRel = $.mobile.path.isRelativeUrl("?a=1&b=2"); // 返回: true var isRel = $.mobile.path.isRelativeUrl("#foo");

十五. $.mobile.path.isAbsoluteUrl()
判断一个 URL 是否是绝对 URL 。

它具有一个参数 URL (string, 必选) ,其值为一个相对或绝对的 URL 。

返回值为 boolean 型变量,若 URL 为绝对形式的 URL ,则返回 "true" ,否则返回 "false" 。

例子:

// 返回: true var isAbs = $.mobile.path.isAbsoluteUrl("http://foo.com/a/file.html"); // 返回: false var isAbs = $.mobile.path.isAbsoluteUrl("//foo.com/a/file.html"); // 返回: false var isAbs = $.mobile.path.isAbsoluteUrl("/a/file.html"); // 返回: false var isAbs = $.mobile.path.isAbsoluteUrl("file.html"); // 返回: false var isAbs = $.mobile.path.isAbsoluteUrl("?a=1&b=2"); // 返回: false var isAbs = $.mobile.path.isAbsoluteUrl("#foo");

十六. $.mobile.path.get()
该方法可以判断一个 URL 的目录部分。如果 URL 末尾没有反斜杠,则 URL 最后的部分会被认为是文件名。这个情况对于站长来说应该不陌生,如 ,URL 中最后的部分 "aaa/" 应该是一个目录,而 中最后的部分 "xxx.zip" 则应该是一个文件名。这也是 Kayo 之前建议注意网址末尾是否需要添加反斜杠的原因。

这个方法具有一个参数 url (string, 必选) ,其值是一个相对或绝对的 URL 。

返回值为 URL 中的目录部分。

例子:
      

// 返回: var dirName = $.mobile.path.get("http://foo.com/a/file.html"); // 返回: var dirName = $.mobile.path.get("http://foo.com/a/"); // 返回: var dirName = $.mobile.path.get("http://foo.com/a"); // 返回: //foo.com/a/ var dirName = $.mobile.path.get("//foo.com/a/file.html"); // 返回: /a/ var dirName = $.mobile.path.get("/a/file.html"); // 返回: "" var dirName = $.mobile.path.get("file.html"); // 返回: / var dirName = $.mobile.path.get("/file.html"); // 返回: ?a=1&b=2 var dirName = $.mobile.path.get("?a=1&b=2"); // 返回: foo var dirName = $.mobile.path.isAbsoluteUrl("#foo");

十七. $.mobile.base
获取根元素。

十八. $.mobile.silentScroll()
静默滚动到某个 Y 值处,并且不触发任何事件。

它具有一个参数,yPos (number, 默认为 0),其值为需要滚动到的 Y 位置。

十九. $.mobile.activePage
引用当前激活的页面。

二十. 关于方法的调用
1. 方法调用相应 JavaScript 的引入

在介绍自定义 jQuery Mobile 默认配置时,曾经说明了相应的 JavaScript 语句需要放置在 jQuery 库和 jQuery Mobile 库之间,而 jQuery Mobile 方法是对 jQuery Mobile 的调用,因此需要在引入 jQuery Mobile 库之后调用,具体如下:

<script src="https://www.jb51.net/jquery.min.js"></script> <!-- 引入自定义 jQuery Mobile 默认配置相应的 JavaScript --> <script src="https://www.jb51.net/custom-mobile.js"></script> <script src="https://www.jb51.net/jquery-mobile.min.js"></script> <!-- 引入 jQuery Mobile 的调用,包括 jQuery Mobile 的方法、事件检测等全部应用性 JavaScript --> <script src="https://www.jb51.net/my-site.js"></script>

2. 方法的调用

对于 jQuery 开发者,应该比较习惯在触发 ready 事件后执行 JavaScript ,例如:

$(document).ready(function(){ // 执行 JavaScript });

或简写为,

$(function(){ // 执行 JavaScript });

这里说明一下,当 DOM 已经加载,并且页面(包括图像)已经完全呈现出时,会触发 ready 事件。

而在系列文章的上一篇中,Kayo 介绍了 pageinit 事件,它在 DOM 加载完成后(包括 jQuery Mobile 对元素的 DOM 增强),就会触发,即它比 ready 更早的触发。

但由于 jQuery Mobile 驱动的网站由 Ajax 导航,因此即使一个文档中包含多个 'page' ,当第一个 'page' 的 DOM 和内容加载完毕后就会触发 ready 事件,而 pageint 也只需第一个 'page' 的 DOM 加载完毕后即触发。

而最终利用那种事件作为开始调用方法的合适时机,会涉及很多方便的考虑,开发者应该根据实际情况作出选择。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wzpjjd.html