Javascript getelementbyid 不起作用

标签 javascript html function getelementbyid

<分区>

为什么以下不起作用?

JavaScript:

document.getElementById("page").style = "-webkit-filter: blur(5px);";

HTML:

<div id="page" style="" >some content</div>

谢谢

最佳答案

确保在元素准备好之后调用它,使用类似window.onload 的东西,或者只是在元素之后将脚本物理地放在页面上......并且设置适当的属性:

window.onload = function () {
    document.getElementById("page").style.webkitFilter = "blur(5px)";
};

元素的 style 属性是一个具有您需要设置的属性的对象。您不应该也不能将 style 属性设置为字符串。我在尝试时遇到了 SyntaxError: invalid label 错误。

我知道设置特殊的“-webkit-filter”样式可能会造成混淆,但是“-webkit-”样式遵循 style 对象中的约定 - 没有前导“-”,并将其他“-”替换为驼峰命名法。

与此同时,切换 class 而不是专门设置 style 属性可能更容易和更有效(因此您可以添加其他样式)。所以我建议使用:

document.getElementById("page").className += " transformer";

并定义 CSS 类:

.transformer {
    -webkit-filter: blur(5px);
}

这样,如果在其他特定浏览器中实现了样式,只需在此处添加它们就很容易了。具体来说,使用 vendor 前缀。

关于Javascript getelementbyid 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15884731/

相关文章:

html - 最大高度在 Internet Explorer 中不起作用

android - 顺畅的飞行运动,如飞扬的小鸟或喷气背包,通过重力和加速度享受欢乐之旅

function - 如何解释方法调用?

javascript - 函数被调用两次 - 一次使用正确的值,一次使用错误的值

javascript - JS keydown 不起作用

javascript - 根据条件获取第一个和最后一个数组

javascript - 使用带有 jQ​​uery 和 ajax 的 Datatables 来收集数据会产生一个奇怪的 URL

javascript - 为什么socket.io 中的数据会丢失?

php - Printer_open() 打印 html 输出

java - 向 Java 类库添加函数