我已经为oninput
提供div
课程。我无法向div
添加ID。所以这是我的剧本:
var objecto = document.getElementsByClassName(" nicEdit-main ")[0];
objecto.oninput = function() {
alert("Ok!");
}
这是我的HTML:
<div class=" nicEdit-main " style="width: 499px; margin: 4px; min-height: 149px; overflow: hidden;" contenteditable="true">1123215545<br></div>
为什么oninput
不能用于此div?
答案 0 :(得分:3)
它应该可以正常工作,确保在dom中加载目标元素后执行脚本。
1种方法是使用dom ready / window load事件处理程序
window.addEventListener('load', function() {
var objecto = document.getElementsByClassName(" nicEdit-main ")[0];
objecto.oninput = function() {
alert("Ok!");
}
})
&#13;
<div class=" nicEdit-main " style="width: 499px; margin: 4px; min-height: 149px; overflow: hidden;" contenteditable="true">1123215545
<br>
</div>
&#13;
另一种方法是将脚本放在元素之后,如
<div class=" nicEdit-main " style="width: 499px; margin: 4px; min-height: 149px; overflow: hidden;" contenteditable="true">1123215545
<br>
</div>
<script>
var objecto = document.getElementsByClassName(" nicEdit-main ")[0];
objecto.oninput = function() {
alert("Ok!");
}
</script>
&#13;