所以我有一个页面想要应用一些 CSS,但它是由 CMS 动态生成的。 URL 保持不变,所以我想我可以将其粘贴在模板文件的头部,以将 CSS 添加到我想要的页面,但它不起作用。
<script type="text/javascript">
jQuery(document).ready(function () {
if(window.location.href.indexOf("/products.html"))
{
document.write("<style type=\"text/css\">
.category-grid li:nth-child(4)
{
margin-left:115px;
}
</style>");
}
});
</script>
我的 document.write
语句中可能存在一些语法错误,因为这就是错误发生的地方,但我无法弄清楚。有什么想法吗?
最佳答案
您不能使用document.write()
在 jQuery“就绪”处理程序中。浏览器完成构建 DOM 后(这就是“就绪”处理程序所暗示的含义),随后调用 document.write
将破坏页面。
您可以使用一些始终包含但由主体类限定的 CSS 规则,而不是这样做:
.products .category-grid li:nth-child(4) {
margin-left: 115px;
}
然后您的脚本会将“产品”添加到 <body>
当 id 确定它是正确的页面时元素的类。
关于javascript - 使用 Javascript 检测 URL 并应用 CSS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9670303/