当我使用这个
时,我发现IE与Firefox有不同的行为$( '头')前面加上( '');
基本上只是在HEAD标签内添加主题2.css(用于主题目的)。我这样做是因为我不想加载它因为我使用csspreload http://www.filamentgroup.com/lab/update_automatically_preload_images_from_css_with_jquery/
在Firefox中,顶部的.css文件将由以下文件优先接管。这很好用!
在IE中,稍后添加到HEAD中的新.css文件将生效。这无论是在顶部还是底部。
由于
答案 0 :(得分:2)
我并不完全清楚你要在这里完成什么 - 你是否试图动态地向页面添加一个样式表而不会影响页面,以便预加载它的图像?
如果是这样,这段代码可能是您想要的:
$('link[rel="stylesheet"][href="theme-2.css"]').attr('disabled', 'disabled');
这将禁用样式表,但它将保持加载状态。如果您希望将来重新打开它,您可以这样做:
$('link[rel="stylesheet"][href="theme-2.css"]').removeAttr('disabled');
修改强>
我想,你真正想要的是disabled
属性的功能。实际上,您可以在添加样式表时对其进行设置,但不会将其应用于页面。上面的代码片段只演示了如何动态执行此操作。
答案 1 :(得分:0)
首先,可能没有一种方法可以在Internet Explorer中成功执行您想要的操作。除非在IE中加载相关样式表后再次添加现有样式表。
其次,为什么不修改现有的插件?
用以下方式调用:
$.preloadCssImages({extra: [{href: "/css/styles.css"}]});
或者,如果您有多个额外的CSS文件:
$.preloadCssImages({extra: [{href: "/css/styles.css"}, {href: "/css/styles2.css"}]});
等
然后,在文件底部的“parseCSS(document.styleSheets)”行之后插入:
if (settings.extra)
{
parseCSS(settings.extra);
}
轻松自负。