【问题标题】:Why Is The ID class i styled on my seperate .JS page not working为什么我在单独的 .JS 页面上设置样式的 ID 类不起作用
【发布时间】:2017-08-13 19:48:26
【问题描述】:

所以这就是我在使用将 JavaScript 放在单独的页面上时所做的:为什么它不起作用??????(我确保源页面名称是 yellow.js,我只是不知道如何在此处分隔 javascript 文件)

<!DOCTYPE html>
<html> 
<head>
<script src="yellow.js"></script>
</head>

<body>

<h1 id="box" onload="change()">NBA Legends</h1>

</body>

</html>

function change() {
var box = document.getElementById("box");
boxStyle = box.style;

boxStyle.color = 'red';
}

【问题讨论】:

  • 它仅在我在

    id 下插入 '' 时才有效,但为什么不能仅使用 java 脚本源更改文本颜色在 标签中渲染?

标签: javascript css function dom styles


【解决方案1】:

window.onload = function change()
{
	
	var box = document.getElementById("box");
	var boxStyle = box.style;

	boxStyle.color = 'red';
}
<!DOCTYPE html>
<html> 
<head>
<script src="yellow.js"></script>
</head>

<body>

<h1 id="box" onload="change()">NBA Legends</h1>

</body>

</html>

这两者的区别

window.onload - 在所有 DOM、JS 文件、图像、Iframe、扩展和其他文件完全加载后调用。这等于 $(window).load(function() {});

onload="" - 在 DOM 加载后调用。这等于 $(document).ready(function() {});

编写干净的代码总是好的,我总是更喜欢使用 window.onload,而不是在元素上使用 onload 事件。

【讨论】:

  • 非常感谢。因此,为了从外部 js 页面执行该函数,我必须正确使用 window.onload 事件?
  • 是的,你需要为你想要的添加一个事件监听器。
  • @Agalar ahhhhh 现在我理解了....所以再次澄清....“onload”事件只有在我将脚本放在

    之后才会起作用
  • 太棒了!是,对的。因为它仅在页面完全加载后才起作用。 (在我上面的回答中也提到过。)。
  • 您可以单击答案旁边的复选标记以将其从灰色切换,您也可以对答案进行投票。谢谢
【解决方案2】:

首先将您的javascript代码放入正文中。如果您想在页面加载时更改颜色,可以使用window.onload = change()事件。并且您的boxStyle 变量在您使用它之前并没有被拒绝。我做了一些更改。

<body>
  <h1 id="box">NBA legends</h1>
  <script type="text/javascript">
   function change() {
    var box = document.getElementById("box");
    var boxStyle = box.style;
    boxStyle.color = 'red';
  }
 window.onload = change();
 </script> 
</body>

【讨论】:

  • @AgalarTogrul....是的,我明白这一点。所以我要说的是,在我的实际文本编辑器中,JavaScript 在它自己的页面中,我只在此处显示它,因为我不知道如何写出两个单独的部分而不会出错。所以你说的我已经理解它只是当我使用外部时它不起作用,除非我在

    之后渲染它。这就是我试图理解的,因为如果它是外部的,为什么我必须在

    之后渲染它,或者这是它可以应用的唯一方法?

  • 不管是外部还是同一个页面。你检查src="yellow.js"是不是正确的路径?
猜你喜欢
  • 2023-03-06
  • 2021-10-12
  • 1970-01-01
  • 1970-01-01
  • 2023-01-13
  • 2022-12-10
  • 1970-01-01
  • 2014-10-28
  • 2021-11-23
相关资源
最近更新 更多