我有几个内容div。在第一个div中我从video.html加载内容,在两个div中加载来自games.html的内容,在三个div中加载来自news.html等的内容。 在FF,Chrome,Opera,Webkit都可以,但在IE 11中无法正常工作。 如何在IE 11的一个页面上制作几个.load()或如何仅为IE 11制作警告弹出窗口?
$(".islice").load("home.html?" + new Date().getTime() );
不行。
我的代码:
$('a#ht_nws div:eq(0)').load('../news.html #cntntblck:eq(1) a:eq(0)');
$('a#ht_nws font:eq(0)').load('../news.html #cntntblck:eq(1) h3');
$('a#ht_nws div:eq(1)').load('../news.html #cntntblck:eq(2) a:eq(0)');
$('a#ht_nws font:eq(1)').load('../news.html #cntntblck:eq(2) h3');
$('a#ht_nws div:eq(2)').load('../news.html #cntntblck:eq(3) img:eq(0)');
$('a#ht_nws font:eq(2)').load('../news.html #cntntblck:eq(3) h3');
答案 0 :(得分:1)
在查看评论后,我为您找到了解决方案。
$.ajax({
url: "news.html",
dataType: 'html',
cache: false
}).done(function(html) {
var readyHTML = $("<div>" + html + "</div>");
$('a#ht_nws div:eq(0)').html($(readyHTML).find("#cntntblck:eq(1) a:eq(0)")[0].outerHTML);
$('a#ht_nws font:eq(0)').html($(readyHTML).find("#cntntblck:eq(1) h3")[0].outerHTML);
//rest of the queries
});
代码只是通过news.html
函数加载$.ajax()
并将整个HTML包装在<div>
readyHTML
中,因为$.find()
无法搜索第一个HTML文件中的图层。然后通过多行,将HTML内容更改为readyHTML
。
.outerHTML
是一个本机函数,它要求我们删除jQuery对象才能工作,从而从jQuery元素中获取[0]
位置。