我正在做的是我有一个中间页面设置,作为其他页面的集线器,这些其他页面可以静态指定(在集线器页面内),也可以通过提供一个url然后进入AJAX动态指定调用
我的问题来自于Safari和Safari。当url'd页面有<style>
时,我的脚本全部选中它们并将它们放在集线器页面的<head>
内,因为那是它们应该在的位置,而页面的其余部分是由包装器选择并加载到集线器中。 Safari不喜欢看新款式。如果我将它们放在<div>
内,那么safari就不会看到它们。
所以我正在寻找的解决方法是让Safari看到为类指定了样式。我已经测试了Firefox4,Chrome,Opera甚至Internet Explorer 9,它们都可以正常运行。
请求示例:(这是在ajax完成函数内部)
responseText = jqXHR.responseText;
var dummy = $("<div></div>");
$('head').append(dummy.html(responseText).find("style"));
答案 0 :(得分:2)
Gregg,我刚刚在一个safari交互式控制台中尝试了以下内容
var style=$("<style></style>");
$("head").append(style);
style.text("* { color: white !important; }");
然后将页面上的所有文本都变为白色。所以,我的建议是动态创建样式标记,附加它,然后添加其他样式标记的文本。
我认为这可能会做你想要的。
答案 1 :(得分:0)