我正在尝试使用 JavaScript 在页面上创建一些元素,并使用新的Material Design Lite来修饰它们。这一切都有效,直到我在创建元素后尝试以编程方式开始禁用元素。
我有几个切换开关(由 JavaScript 创建)。当一个人打开时,我希望其他人被禁用。
如果我使用:
toggle2.disabled = true;
它工作得很好而且它被禁用了,但是一旦我像这样尝试它:
setInterval(function(){
if (toggle1.checked == true) {
toggle2.disabled = true;
} else {
toggle2.disabled = false;
}
}, 1000);
toggle2 在视觉上仍然处于活动状态,涟漪效果有效,但不会滑动到 ON,因此它在后台被禁用,只是视觉上没有。
这是一个JSFiddle示例(使用 HTML 元素,但我创建的 JS 元素也是如此)
另外,这里是问题的视频。其中,第三个 down 被禁用,toggle3.disabled = true;
第四个被 IF 语句禁用,基于第二个 down 的状态。
我不知道我做错了什么,或者这是 MDL 本身的错误。
谢谢