javascript onclick事件后修改CSS的正确标记

Proper markup for modifying CSS after javascript onclick event

本文关键字:CSS onclick 事件 修改 javascript      更新时间:2023-09-26

javascript函数构建div后,修改CSS的正确标记是什么?我熟悉使用jquery的.css(),但我不知道如何在js加载完资源后创建事件处理程序。javascript来自第三方,看起来是这样的——它还创建了可怕的内联样式:

<script type="text/javascript">
function jsfunction(){
    var x = (content);
    var y = document.createElement("script");
    js.setAttribute("language", "javascript");
    js.setAttribute("type", "text/javascript");
    js.setAttribute("src",x + "scriptUrl");
    document.getElementsByTagName("head").item(0).appendChild(js);
}
if (window.attachEvent) {window.attachEvent("onload", jsfunction);}
else if (window.addEventListener) {window.addEventListener("load", jsfunction, false);}
else {document.addEventListener("load", jsfunction, false);}
</script>

您可以尝试这样做,它将覆盖现有的jsfunction(假设您无法让第三方更改它),应用它,然后现有您的css更改代码。由于jsfunction已经绑定到文档加载,所以它应该执行。

请记住,这还没有经过测试,我不确定文档加载是否会使用这种覆盖原始文件,但值得一试。

// Keep a reference to the older function.
var old_jsfunction = jsfunction;
// Redefine jsfunction
jsfunction = function() {
  old_jsfunction.apply(old_jsfunction, arguments);
  $("#divname").css({'width': '100%', 'position': 'relative'});
};