Javascript JS:在页面上加载而不是onClick
我用一个按钮来改变div的颜色。 上面有以下脚本:Javascript JS:在页面上加载而不是onClick,javascript,Javascript,我用一个按钮来改变div的颜色。 上面有以下脚本: onclick="setActiveStyleSheet('blue'); return false;" 但我希望在加载页面时加载此脚本。我该怎么做? 试着这样做: <body onload="setActiveStyleSheet('blue')"> 但这不起作用。在页面底部使用脚本标记 <body> ... <script> setActiveStyleSheet('blue') </s
onclick="setActiveStyleSheet('blue'); return false;"
但我希望在加载页面时加载此脚本。我该怎么做?
试着这样做:
<body onload="setActiveStyleSheet('blue')">
但这不起作用。在页面底部使用脚本标记
<body>
...
<script>
setActiveStyleSheet('blue')
</script>
</body>
...
setActiveStyleSheet('blue')
您应该使用addEventListener
等待DOM内容加载
函数setActiveStyleSheet(颜色){
//功能体
document.getElementById('textContainer')。innerHTML=color;
}
//香草JS
document.addEventListener(“DOMContentLoaded”,function()){
log(“DOM已完全加载并准备好进行DOM操作”);
setActiveStyleSheet('blue');
});代码>
使用Jquery
setActiveStyleSheet = function (whichColor){
$("#myDiv").css('background',whichColor);
}
$(document).ready(function(){
setActiveStyleSheet('blue');
});
其中“myDiv”是div名称。
签入请共享一个请不要使用内联事件处理程序,这是不好的做法。使用addEventListener
进行更干净的事件处理内联处理程序不工作的问题可能与未首先加载包含函数的脚本有关。在执行DOM操作的情况下,这是一个非常糟糕的主意。使用eventDOMContentLoaded
insteadBest将脚本标记放在正文内部,因为它的外部无效html@PatrickAkkers正如其他人所说,这是一个肮脏的黑客行为。最好在单独的脚本中使用适当的事件处理程序file@PatrickAkkers不要使用这种方法。还有其他更好的答案。应该是document.addEventListener(“DOMContentLoaded”,function(){setActiveStyleSheet('blue')})代码>