最近私のWebページでJavaScriptを使用する方法を学び始めました。私の運動は今日ボタンを私にの形を与えることができるようにすることです。JavaScript button.onclickが機能しません
V字状を作成するために、コードは結構ですが、私はクリックハンドラ(すなわちoBtn.click = function(){};
)に入れしようとすると、それは動作しません。私はこの権利を理解していれば
<style>
div{
width: 50px;
height: 50px;
border: 1px red solid;
position: absolute;
line-height: 50px;
text-align: center;
margin: 5px;
}
</style>
<script type="text/javascript">
window.onload = function(){
var oBody = document.getElementById('body');
var aDiv = document.getElementsByTagName('div');
var oBtn1 = document.getElementById('btn1');
for (var i = 0; i < 9; i++) {
oBody.innerHTML += '<div>'+ i +'</div>';
}
for (var i = 0; i < aDiv.length; i++) {
aDiv[i].style.left =i*50+'px';
}
oBtn1.onclick = function(){
for (var i = 0; i < aDiv.length/2; i++) {
aDiv[i].style.top = 40+i*50+'px';
}
var x = aDiv.length;
for (var i = 4; i < x; i++) {
aDiv[i].style.top =x*50-i*50-50+40+'px';
}
};
};
</script>
代わり直接のonclickハンドラの設定【のaddEventListener(https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener)を使用してみてください。 'oBtn1.addEventListener(" click "、function(){...});' – Tibrogargan
[子孫のイベントリスナーを破棄せずにinnerHTMLに追加することはできますか?](http://stackoverflow.com/questions)/595808/in-it-possible-to-append-to-innerhtml-without-destroying-descendants-event-list) –