1

ロールオーバーブロックのリストがあります。ブロック自体は1ページへのリンクです。ブロック内には、別のページへの2つの他のリンク(テキスト)があります。これらのリンクの1つをクリックすると、そのリンクとブロックリンクの両方が実行され、2つのウィンドウが読み込まれます。テキストをクリックしたときにブロックリンクが実行されないようにするにはどうすればよいですか?

ありがとう!

echo "<div class='feedcontent'
           onclick='show_thumbnail($pageid,$revid, this)'
           id='newsitem-$pageid-$revid'>";

echo " <a href='javascript:void;'
             onclick='load_wikitrust(\"$wktrust_url\");'>edited</a><br>";
$aname=substr($wkarticle, 0, 27);
echo " <a href='javascript:void;'
             onclick='window.open(\"$wkarticle_url\")'>$aname</a>";
echo " on <span class='timeline_timestamp'>$timestamp</span>";
echo "</div>

したがって、たとえば、記事名($ aname)をクリックすると、サムネイルを表示するonclickリンクと、記事が読み込まれたウィンドウを開くonclickリンクの両方が表示されます。これは、クラスfeedcontentによって定義されたブロック内のコードのスニペットにすぎません。

4

3 に答える 3

1

あなたはevent.stopPropagation();そのために使うことができます:

http://jsfiddle.net/jPYka/

<div class="outer" onclick="alert('outer container clicked'); return false">
    <div class="inner" onclick="alert('inner 1 clicked'); event.stopPropagation();">inner 
        1
    </div>
    <div class="inner" onclick="alert('inner 2 clicked');">inner 
        2
    </div>
</div>​

最初のコンテナをクリックすると、外部divのonclickイベントがどのように防止されるかに注意してください。

于 2012-07-24T14:56:02.920 に答える
1

動作している可能性があり
ますが、hrefをネストすることはできません。

A要素によって定義されたリンクとアンカーはネストしてはなりません。A要素には他のA要素を含めることはできません。

w3.org-彼らの ページで完全な詳細を見る

于 2012-07-24T15:01:22.340 に答える
0

HTML仕様によると、他のタグの中にタグを入れることはできませんa

a要素_

カテゴリ:インタラクティブコンテンツ、フローコンテンツ。
コンテンツモデル:透過的ですが、インタラクティブなコンテンツの子孫があってはなりません。

正しい動作をするためにHTMLを修正してください!

于 2012-07-24T14:57:38.767 に答える