0

現在、記事タグ (HTML5) 内にいくつかのクリック可能な div を配置しようとしています。さて、問題は私の記事もクリック可能であることです。そのため、div をクリックしようとすると、代わりに記事をクリックしていると想定されます。私のクリックリスナーはjavascriptで設定されています。これが私のコードです:

HTML:

<article id='one'>
<div id='somediv' class='up'>Stuff</div>
</article>

もちろん、これは私がやろうとしていることのほんの一例です。

Javascript:

    articles = document.getElementsByTagName('article');
for (var i = 0; i < articles.length; i++) {
    articles[i].addEventListener('click',redirect,false);
}

var UpVote = document.querySelectorAll(".up");
for (var i = 0, length = nodeList.length; i < length; i++) {
    UpVote[i].addEventListener('click',UpVote,false);
}
function UpVote(){
    alert(this.id);
}

ここでわかるように、すべてのアーティクル オブジェクトと .up クラス オブジェクトのリスナーを設定する 2 つのループがあります。これらが機能すると確信しているので、関数も機能します。リダイレクト機能が機能することを確信しているため、リダイレクト機能を投稿していません。リダイレクトを取得します。

私のCSS:

.up{
display:block;
padding-left:3px;
background:rgba(150,195,225,.4);
border-radius:5px;
-webkit-box-shadow:1px 1px 2px rgba(110,110,110,.1);
width:20px;
-webkit-transition: width .3s;
}

記事もブロックとして設定されています。

助けてくれてありがとう!

4

1 に答える 1

0

イベントのバブリングとキャプチャを調べます。div をクリックすると、記事クリックされるため、リダイレクトが最初に実行され、賛成票が呼び出されなくなる可能性があります。

于 2012-12-19T20:03:11.790 に答える