所以我在一个非常古老的网站工作 - 一切都已转换为div,而在main.ts内部,我尝试删除内联样式,因为函数remove_all_styles()不起作用。
@func XMLNode.remove_all_styles() {
remove(".//link[@rel='stylesheet'][not(@data-mw-keep)]|.//style")
}
我也尝试添加删除(" .//@ style")但仍未能删除div style =""在页面的一半。我没有太多运气找到解决方案,所以任何帮助将不胜感激。
编辑 - 作为临时解决方案,我使用了我在CSS技巧上找到的这个自定义JavaScript - http://css-tricks.com/snippets/javascript/remove-inline-styles/
但我知道某处有更合适的Moovweb解决方案。
谢谢,
答案 0 :(得分:2)
我的猜测是,如果您查看源代码,则内联样式不会出现,这意味着稍后会使用JS添加样式。否则,remove(".//@style")
如果您已经确定了正确的div,那么$(".price-table th").css("color", "red");
就可以了。
我能想到的唯一的氚实施有点笨拙,但有几次为我工作。您需要对添加内联样式的桌面js进行反向工程,并找出它使用的选择器。然后,您可以通过更改属性或重命名节点
来找到解决方法例如,如果桌面js是这样的
$(".my-table th").attr("style", "");
或像这样{{1}}
您可以覆盖tritium中的类名来破坏上面的jquery选择器。
$(".//table[@class='price-table']") { attributes(class: "new-price-table) }