如果我将.thumbnail div放在#thumbhider和#thumbcontent div之外,则单击事件将正常工作并符合预期。目前他们还没有。

网址:http://www.samcoles.co.uk/dustbowl/guitars.php

我猜这与overflow:隐藏在包含div上的东西有关吗?我该如何解决?

javascript:

//this is within $(document).ready function
$(".thumbnail").click(function () {

    var IMAGE_DIR = "images/guitars/";
    var img = $(this).find("img").attr("alt");
    $("#mainphoto").attr("src", IMAGE_DIR + img);
    if(captions) {
        $("#imgcaption").text(captions[img]);
    }
});


CSS:

div.thumbnail { background-color: #000000; padding: 1px; float: left; width: 69px; height: 69px; cursor: pointer; }
div#thumbhider { width: 673px; height: 70px; overflow: hidden; margin: 0 auto; margin-top: 19px; position: relative; }
div.thumbcontent { height: 70px; background-color: #00ff00; width: 0 auto; display: inline; position: relative; }


HTML:

<div id="thumbhider">
        <div class="thumbcontent">
            <div style="margin-right:15px;" class="thumbnail"><img alt="1.png" src="thumber.php?img=images/guitars/1.png&amp;h=69&amp;w=69"></div>
            <div style="margin-right:15px;" class="thumbnail"><img alt="10.png" src="thumber.php?img=images/guitars/10.png&amp;h=69&amp;w=69"></div>

            <!--etc....-->

            <div style="clear:both;"></div>
        </div>
    </div>

最佳答案

position:relative删除div.thumbcontent

div.thumbcontent {
    height: 70px;
    background-color: lime;
    width: 0 auto;
    display: inline;
    /*position:relative*/
}

关于jquery - 点击事件未在内部div上触发,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12789381/

10-09 15:24
查看更多