如何从jQuery移动脚本中删除基本标签?

时间:2013-02-26 17:59:52

标签: javascript jquery html

在jQuery Mobile中:

  • 如何从页面中删除<base href="">标记
  • 如何禁用base href?

相关守则:

 // Test for dynamic-updating base tag support ( allows us to avoid href,src attr rewriting )
 function baseTagTest() {
     var fauxBase = location.protocol + "//" + location.host + location.pathname + "ui-dir/",
         base = $("head base"),
         fauxEle = null,
         href = "",
         link, rebase;

     if (!base.length) {
         base = fauxEle = $("<base>", { "href": fauxBase }).appendTo("head");
     } else {
         href = base.attr("href");
     }

     link = $("<a href='testurl' />").prependTo(fakeBody);
     rebase = link[0].href;
     base[0].href = href || location.pathname;

     if (fauxEle) {
         fauxEle.remove();
     }
     return rebase.indexOf(fauxBase) === 0;
 }

1 个答案:

答案 0 :(得分:0)

基本元素是jQuery mobile导航模型的关键组成部分,以至于当jQuery移动网站加载到无法动态更新基本元素的浏览器中时,它会将url添加到基础元素之前。

满足您需求的两个建议:

  1. 使用绝对文件路径而不是相对

  2. 使用jQuery Mobile Download Builder并自定义jQuery Mobile应用程序所需的模块。我最初的猜测是你想要排除导航模块以删除基本元素功能。