在 DOM 中,可以这样引用元素的属性吗:
var universe = document.getElementById('universe');
universe.origin = 'big_bang';
universe.creator = null;
universe.style.deterministic = true;
?我对物体及其隐私的深深尊重,以及如果我不小心,事情可能会变得非常糟糕的感觉,让我想做更多这样的事情:
var universe = document.getElementById('universe');
if(universe.hasAttribute('origin')) then universe.origin = 'big_bang';
etc...
真的有必要使用那些访问器方法吗?当然,这可能或多或少是必要的,这取决于我有多确定我正在操作的元素将具有我期望它们具有的属性,但一般来说,DOM 人员是否认为使用 .notation 而不是 getter 和 setter 是可以的?
谢谢!
最佳答案
对于 XML 文档,您必须使用getAttribute
/setAttribute
/removeAttribute
等。没有来自的映射JavaScript 属性到 DOM 属性。
对于 HTML 文档,您可以使用 getAttribute
等来访问属性,但最好不要这样做,因为 IE6-7 对此有困难。 DOM Level 2 HTML 属性不仅更可靠,而且更易于阅读。
不清楚您在这里使用的是 XML 还是 HTML 文档。显然 origin
不是 HTML 属性;像这样的“自定义”元素和属性不应包含在 HTML 文档中。但不清楚 universe.style.deterministic
指的是什么;如果没有 HTML style
属性,您将无法映射 CSS 样式查找。
关于javascript - 在 DOM 中可以使用 .notation 来获取/设置属性吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2452090/