0

我试图在按钮位于类页脚时找到位于类前面的 a 的 href 属性。似乎无法让它工作。

JSFIDDLE:

HTML

<div class="panel">
    <div class="front"> 
        <a rel="lightbox" href="asas/as/abc.html">
            <img width="200" height="125" src="http://www.wired.com/wiredenterprise/wp-content/uploads//2012/10/stormtroopers-sm.png"  >
        </a>
        <div class="footer">
            <button class="btn btn-mini" rel="btn_scr"><i class="icon-fullscreen"></i> </button>
        </div>
    </div>
    <div class="back" style="width: 200px; height: 157px;">something here</div>
</div>

JAVA

$('body').on('click', '[rel=btn_scr]', function (event) {
    event.preventDefault();
    var data = $(this).parents(".front > a").attr("href");
    alert(data);
    //console.log(data);

});   
4

3 回答 3

6

问题是.front > a永远不是你的按钮的父母。您需要向上遍历到父级 ( .front),然后向下遍历到锚点,例如

var data = $(this).closest('.front').find('> a').attr('href');

更新:换掉了parents()closest()因为它更适合这个操作。差异在closest()文档中进行了说明

于 2013-07-02T05:57:53.653 回答
2

尝试这个

http://jsfiddle.net/C5R7u/2/

var data = $(this).closest(".front").find('a').attr("href");
于 2013-07-02T05:59:54.993 回答
1

你可以试试这个

$(this).parents(".front").find('a').attr('href')

这是更新的jsfiddle

于 2013-07-02T06:00:39.017 回答