Javascript 为什么不是';我使用document.stylesheets的尝试不起作用吗?
我试图通过理解如何使用香草javascript来理解jquery如何修改样式表,但是我找不到很多关于这个主题的资源。我已经检查了有关该主题的堆栈溢出页面,但我无法找出我做错了什么 我有一个简单的html页面和一个简单的样式表,html页面中的javascript在一个脚本标记中 html页面Javascript 为什么不是';我使用document.stylesheets的尝试不起作用吗?,javascript,html,css,Javascript,Html,Css,我试图通过理解如何使用香草javascript来理解jquery如何修改样式表,但是我找不到很多关于这个主题的资源。我已经检查了有关该主题的堆栈溢出页面,但我无法找出我做错了什么 我有一个简单的html页面和一个简单的样式表,html页面中的javascript在一个脚本标记中 html页面 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <l
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<link rel="stylesheet" href="main.css">
</head>
<body>
<div class="parent"></div>
<script>
let parent=document.getElementsByClassName('parent')[0];
for(let i=0; i<10;i++){
let child=document.createElement('div');
let id= "i"+ i.toString();
child.setAttribute("id",id);
parent.appendChild(child);
}
</script>
</body>
</html>
控制台命令
当我设置样式以拉出样式表对象时,在控制台中,我得到了对象,即样式表,但cssRules属性设置为null,其中没有样式表中的任何规则。我不明白这是为什么
比如说
document.styleSheets //returns StyleSheetList {0: CSSStyleSheet, length: 1}
document.styleSheets[0] /*returns CSSStyleSheet {ownerRule: null, cssRules:
null, rules: null, type: "text/css", href:
"file:///C:/Users/brand/Documents/test/main.css"…}*/
对样式表数据的访问受到限制。大多数浏览器认为任何<代码>文件:///< /COD> URL都在不同的原点。
您需要使用HTTP或HTTPS访问文档,并使样式表位于同一来源。对样式表数据的访问受限制。大多数浏览器认为任何<代码>文件:///< /COD> URL都在不同的原点。
您需要使用HTTP或HTTPS访问文档,并使样式表位于同一来源。问题似乎与此相关:
解决方案是通过Apache/XAMPP等web服务器查看站点。问题似乎与此相关:
解决方案是通过Apache/XAMPP这样的web服务器查看网站。无法复制,对我来说效果很好。事实上:Firefox总是显示规则,Chrome确实不会。如果文件是通过file:///打开的,我必须通过web服务器打开它才能打开work@ChrisG,您可以将其作为答案发布。所以,对于离线测试,你必须安装XAMP、Wamp…或类似的东西…无法复制,对我来说很好。事实上:Firefox总是显示规则,Chrome确实没有。如果文件是通过file:///打开的,我必须通过web服务器打开它,才能进行测试work@ChrisG,您可以将其作为答案发布。所以,对于离线测试,您必须安装XAMP、Wamp…或类似的东西。。。
document.styleSheets //returns StyleSheetList {0: CSSStyleSheet, length: 1}
document.styleSheets[0] /*returns CSSStyleSheet {ownerRule: null, cssRules:
null, rules: null, type: "text/css", href:
"file:///C:/Users/brand/Documents/test/main.css"…}*/