1

ページで次に利用可能な要素をトリガーする要素が欲しいのですが。

$("span.topic").click(function(){
    $("span.topic").next("a.page").trigger('click');
});

<div> 
    <span class="topic">Topic 1</span>
    <a class="page" href="http://www.google.com">Welcome to the first Topic</a>
</div>
4

4 に答える 4

1

jsBinデモ

$('.topic').on('click', function(){
  window.location.href = $(this).next('a').attr('href');
});
于 2012-11-13T20:18:41.073 に答える
0

thisどの要素から開始するかがわかるように使用します

$("span.topic").click(function(){
    $(this).next("a.page").click();
});

または、スパンとアンカーの間に要素がある場合。

$("span.topic").click(function(){
    $(this).nextAll("a").first().click();
});
于 2012-11-13T20:19:56.707 に答える
0

なぜそんなに多くの不要なセレクターを使っているのか分かりません。使用する:

$("span.topic").click(function(){
    $(this).next().click();
});
于 2012-11-13T20:20:53.767 に答える
0

クリックでナビゲートしようとしている場合は<span class='topic'>Topic 1</span>、アンカータグのクリックイベントをトリガーすることによってそれを行うことはできません。ブラウザはその方法を使用してナビゲートしません。

window.location.hrefただし、を何に変更することもできますhttt://www.google.com

これを試して:

$("span.topic").click(function(){
    window.location.href = $("span.topic").next("a.page").attr('href');
});

これはあなたが試みていることに対する解決策ですが、ナビゲートしたいURLを参照するためのあまり実用的な方法ではありません。このようにスパンをアンカータグで包むだけではない理由はありますか?

<div> 
    <a class="page" href="http://www.google.com">
        <span class="topic">Topic 1</span>
        Welcome to the first Topic
    </a>
</div>
于 2012-11-13T20:26:52.370 に答える