我使用此函数加载带有.load()的内容:
$(document).ready(function(){
$("nav a").click(function () {
$("#main-content").load($(this).attr("href") + " #content > *");
return false;
});
});
index.php包含样式和脚本。
加载的内容只包含div中没有头部,正文或样式的内容。
问题:
- IE8不加载样式&此功能不起作用:
$(document).ready(function() {
if ($(window).width() < 630) {
$('aside').each(
function(){
$(this).parents('article').find('h2').after(this);
}
);
}
if ($(window).width() > 630) {
$('aside').each(
function(){
$(this).parents('section').after(this);
}
);
}
});
$(window).bind('resize', function(){
if ($(window).width() < 630) {
$('aside').each(
function(){
$(this).parents('article').find('h2').after(this);
}
);
}
if ($(window).width() > 630) {
$('aside').each(
function(){
$(this).parents('section').after(this);
}
);
}
});
我已经尝试像其他脚本一样修复它:
$(document).ajaxComplete(function(){ });
..但它不起作用。
任何帮助都非常有用。
答案 0 :(得分:0)
使用<link>
显式加载CSS,并使用$.getScript()
加载并执行javaScript文件。
答案 1 :(得分:0)
aside
是一类吗?
然后你必须使用
$('.aside').each(
而非
$('aside').each(
。
article
和section
同样如此。
答案 2 :(得分:0)
我想出了问题:这是因为我在页面上使用的HTML5元素。使用HTML5shiv一般来说,让它们在页面上运行没有问题,但是IE不会通过.load()在加载的内容上捕获它们。
这是一个关于此问题的主题。
How to "enable" HTML5 elements in IE 8 that were inserted by AJAX call?
innershiv已经是一个解决方案:
http://css-tricks.com/6869-html5-innershiv/
编辑:但仍然存在命名函数的问题。