蛋疼死了,用jquery無法include html 本帖最后由 Aliceui 于 2013-01-05 00:01:42 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 没必要非要用load,这样还有一个隐性的问题是如果有二级目录的话,这个header.html就请求不到了。其实直接以字符串的形式拼接插入或许安全一点。(function(){ var div = document.createElement('div'); div.id = 'header'; $('head').after(div); var footstr = '<div class="header_box">\ <p>csdn计算机科技有限公司 版权所有</p>\ </div>\ </div>'; $('#header').html(footstr); }()); 用 iframe 或者 服务器端 include 我晕,这么个功能和load有什么关系写一个公共的js文件:$(function(){ var header = $('#header'); if(header.length) { header.append('<div>一个公共的header</div>'); }});然后每个页面都加载这个js文件就可以了 以上兩個方法div內容只要換成我的header就顯示不到了<div class="header"><div class="heading"><div class="logo"><a href="./"><img src="images/logo_dark.png" border="0"></a></div><div class="nav"><h4><ul> <li><a href="#">nav1</a></li> <li><a href="nav2">nav2</a></li> <li><a href="nav3">nav3</a></li> <li><a href="#">nav4</a></li></ul> </h4></div></div></div>而重點是,有沒有辦法直接用jquery設定每個html使用虛擬路徑,因為我有很多文件是在二級和三級目錄而圖片和CSS文件都是在根目錄 因為我內容包涵多個div,結果就.... 模块化开发?光靠jquery不行,你可以引入requirejs,然后使用requirejs的text插件。代码大概是require(["text!header.html"],function(headerTpl){ $("#header").html(headerTpl);}) 怀疑你会用jquery么?看到你在用 $('#header')获取标签,都以为你加了id="header",结果你加的是class...... 還是無法解決插入後的header在不同目錄層無法用同一個圖片目錄 這裡的是header的內容,class目的是獲取css至於要被插入的div是設定了id為header 1. 你的$("#header").load("header.html");并没有放在$(function(){ //页面dom加载完成之后才做....});之中吧?2. 根本不存在什么二级目录三级目录四级目录的问题。第1:所有图片的src均用绝对路径!第2:所有jquery请求的url均用绝对路径!第3:一定要引用相应的header的样式文件。 絕對路徑是不是指以引用的url原本的位置作標準? 為什麼我引入header後會是用了相對路徑? 比如你的头像的地址:http://avatar.profile.csdn.net/F/D/1/1_aliceui.jpg这就是一个绝对路径。开发时为了方便,可以省去域名: /F/D/1/1_aliceui.jpg如果所有的图片及ajax请求都这么做, 就没有任何问题了。千万别用什么相对路径, 大忌 代码应该是放在了DOM对象之前,或者内页加载head文件时路径不对,内页路径和根目录的路径是不一样的<div id="header"></div><div class="item"></div><script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script> <script>///一定要在dom下面,除非放在window.onload事件中$("#header").load("/header.html");//使用绝对路径,而不是相对的,要不/abc/xx.html加载header.html是abc目录下的header.html了</script> 【函数中变量的周期?】 超级难题,请教高手,百思不得其解 JAVASCRIP中的this? 对某些特殊字符转义的问题,本身以转义和没转义的混在一起要怎么办 当关闭窗口时弹出询问信息 如何取弹出窗口的返回值? 请问如何让 onclick 函数弹出 一个新窗口。 javaScript中如何判断一页中是否有数据?用于没有数据禁止按“打印”按钮。 请各位帮忙改一改一段全国地区代码: javascript取余数的函数是什么??谢谢! Js function里面可以嵌套吗,以及如何跳出? var openImg = new ..Asset not found..
var div = document.createElement('div');
div.id = 'header';
$('head').after(div); var footstr = '<div class="header_box">\
<p>csdn计算机科技有限公司 版权所有</p>\
</div>\
</div>';
$('#header').html(footstr);
}());
写一个公共的js文件:
$(function(){
var header = $('#header');
if(header.length) {
header.append('<div>一个公共的header</div>');
}
});
然后每个页面都加载这个js文件就可以了
<div class="header">
<div class="heading">
<div class="logo">
<a href="./">
<img src="images/logo_dark.png" border="0"></a>
</div><div class="nav">
<h4>
<ul>
<li><a href="#">nav1</a></li>
<li><a href="nav2">nav2</a></li>
<li><a href="nav3">nav3</a></li>
<li><a href="#">nav4</a></li>
</ul>
</h4>
</div>
</div>
</div>而重點是,有沒有辦法直接用jquery設定每個html使用虛擬路徑,因為我有很多文件是在二級和三級目錄而圖片和CSS文件都是在根目錄
代码大概是require(["text!header.html"],function(headerTpl){
$("#header").html(headerTpl);
})
怀疑你会用jquery么?
看到你在用 $('#header')获取标签,都以为你加了id="header",结果你加的是class......
$(function(){
//页面dom加载完成之后才做....
});
之中吧?2. 根本不存在什么二级目录三级目录四级目录的问题。
第1:所有图片的src均用绝对路径!
第2:所有jquery请求的url均用绝对路径!
第3:一定要引用相应的header的样式文件。
絕對路徑是不是指以引用的url原本的位置作標準?
代码应该是放在了DOM对象之前,或者内页加载head文件时路径不对,内页路径和根目录的路径是不一样的
<div id="header"></div>
<div class="item"></div><script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script>
///一定要在dom下面,除非放在window.onload事件中
$("#header").load("/header.html");//使用绝对路径,而不是相对的,要不/abc/xx.html加载header.html是abc目录下的header.html了
</script>