0

现在我有一个显示图像的 html 页面。请注意,该 div 仅包含 1 个图像文件:

<div="div_1"><img id = "img_1" src = '....' /></div>

我想实现的是当用户双击 div 时,通过 jquery/js 来获取 "div_1" 或 "img_1" 。以更好的方式,获得 "1" 。是否有可能实现/任何功能可以帮助实现这一目标?

谢谢

更新:

当前的Html代码是这样的

<div class="turn-page-wrapper" page="2" style="position: absolute; overflow: hidden; width: 28.5px; height: 37px; top: 0px; left: 0px; right: auto; bottom: auto; z-index: 6;">
<div style="position: absolute; top: 0px; left: 0px; overflow: hidden; z-index: auto; width: 47px; height: 47px;">
<div id="div_2" class="turn-page p2" style="width: 28.5px; height: 37px; -webkit-transform-origin: 0% 0%; position: absolute; top: 0px; left: 0px; bottom: auto; right: auto;">
<img id="img_2" src="demo/medium/Web081112_P002_medium.jpg" alt="flip book">
</div>
</div>
</div>

看来我的情况不是那么简单,当我使用var id = $(this).attr("id");它时返回页面作为结果。如果我的情况不允许我获取页面的属性,图像的 id,那么是否意味着我无法获取单个图像的实际 ID?谢谢

最新更新(仅剩 1 个缺陷!)

$("div.turn-page").dblclick(function() {
var id = this.id;
num = id.split("_")[1];
alert (num);
});

目前我正在使用它来获取 id ,但是对于最后一个结果(不可转动),​​当我双击它时,它没有响应或做任何事情。但它应该是工作,因为类有翻页 p7 ?

   <div class="turn-page-wrapper" page="7" style="position: absolute; overflow: hidden; width: 609.5922459893047px; height: 793px; top: 0px; right: 0px; left: auto; bottom: auto; z-index: 6;">
    <div style="position: absolute; top: 0px; left: 0px; overflow: hidden; z-index: auto; width: 1000px; height: 1000px;">
    <div id="div_7" class="turn-page p7" style="width: 609.5922459893047px; height: 793px; position: absolute; top: 0px; left: 0px; bottom: auto; right: auto;">
    <img id="img_7" src="demo/medium/Web081112_P007_medium.jpg" alt="flip book">
    </div>
    </div>
    <div style="top: 0px; left: 0px; overflow: hidden; z-index: 1; width: 610px; height: 793px;">
    </div>
    </div>
4

3 回答 3

2

您可以在 javascript 中执行此操作:

document.getElementById("div_1").children[0].id

这将返回“div_1”div 的第一个孩子的 id

于 2012-12-08T03:46:45.250 回答
1

像这样:

$("div").dblclick(function() {
    var id = this.id,
        num = id.split("_")[1],
        imgSrc = $(this).find("img").attr("src");

    // do something with the id, the number, or the image src
});

演示:http: //jsfiddle.net/LGwK7/

这会将双击处理程序绑定到所有div 元素,因此您可能希望只为您关心的元素添加一个公共类并绑定到这些元素。(我假设通过 id 绑定是没有意义的,因为您询问了如何获取被点击的 id。)

请注意,您的 html 有一个错误:<div="div_1"...,应该是<div id="div_1"...

于 2012-12-08T03:47:11.867 回答
1

你可以做这样的事情

var divId;

$('div').dblclick(function(e){
    e.preventDefault();
    divId = $(this).prop('id');
});
于 2012-12-08T03:47:30.347 回答