0

私はこのコードを持っています:

<div class="Slideshow homeSlideshow">
    <div class="jshowoff jshowoff-1" style="position: relative;">
    <ul style="position: relative;">
        <li class="Slide" title="Trailer" style="left: auto; right: 0px; top: auto; bottom: auto; position: relative;">
            <a target="_blank" href="http://www.youtube.com/watch?v=123456" title="xxx"></a>
        </li>
    </ul>
    <p class="jshowoff-slidelinks jshowoff-1-slidelinks">
        <a class="jshowoff-slidelink-0 jshowoff-1-slidelink-0" title="undefined" href="#null" style="width: 30.3333%;">
            Trailer
        </a>
    </p>
    </div>
</div>

そして、私はpクラスjshowoff-slidelinksにいます。必要なのは、この p の内側をクリックすると、li クラスのスライド内にある href に移動することです。

何か案が?

親の子への href に移動するようなものです。

これはスライドショー コードの一部であるため、スライドが移動すると li が変化し続けます。

4

5 に答える 5

1
$("p a").click(function() {
  var div = $(this).parent().parent(),
    a = div.find("ul a"),
    href = a.attr("href");

  window.location = href;
});
于 2012-11-22T16:48:20.783 に答える
1

これを試して、

ライブデモ

$('.jshowoff-slidelinks.jshowoff-1-slidelinks').click(function(){

    alert($(this).closest('.jshowoff.jshowoff-1').find('li a').attr('href'));

});​
于 2012-11-22T16:49:13.473 に答える
1
$('[class^=jshowoff-slidelink]').click(function(e){
    e.preventDefault();
    window.location = $(this).closest('.Slideshow').find('.Slide a').prop('href');
});

呼び出しは、パフォーマンスに影響する which.parent()を使用しません。ただし、より優れたパフォーマンスを発揮します。querySelectorAll.closest()

そのリンクのインスタンスが複数ある場合に備えてclass^、私は使用しました。window.location は、この場合は要素内のアンカー要素である のclass begins with後に指定された文字列をロードするようブラウザに指示します。このアンカーから href プロパティを取得しただけです。=.slide

于 2012-11-22T16:49:29.433 に答える
1

私はおそらくと行きclosestますfind

$("p.jshowoff-slidelinks").click(function() {
    var href = $(this).closest("div.Slideshow").find("li.Slide a").attr("href");
    if (href) {
        window.location = href;
    }
    return false;
});
于 2012-11-22T16:49:54.980 に答える
1

クリックのイベントをバインドし、イベントで要素を取得して親を確認し、必要なアンカー タグを見つけます。

 var p = $("p.jshowoff-slidelinks");
 p.click(function(){
 window.location = $(this).parent().find("ul>li>a").attr("href");
 });          

以下のjsfiddleを確認してください

http://jsfiddle.net/LSwvG/3/

Window.loaction を使用してリダイレクトする

ありがとう

于 2012-11-22T17:08:54.593 に答える