看起来这应该是小菜一碟,但 Google 或 jQuery 的网站都没有帮助。
我想获取结构内图像的 DOM ID。
结构很复杂:我正在使用类似于 jQuery's website 中找到的容器示例之类的东西。 。不同之处在于我有几个容器,每个容器都有自己的镜像。
将图像放入容器内后,我想操纵所有图像在容器内显示的方式。由于我想引用容器内的所有图像,因此我考虑使用它们的 DOM 编号(它们位于 image-of-container-j 和 image-of-container-j+1 之间),但我不知道有什么办法获取容器镜像的 id。使用 jquery 的 .index() 将引用相对于其父级的位置。由于每个图像都在 a 或某物内,所以用该方法我总是得到 1 。有什么想法/解决方法吗? :-)
代码:http://jsfiddle.net/xKpTH/2/
基本上,我有配料和厨房用具,它们的作用就像 jQuery 站点示例中的垃圾桶。当按下某个按钮时,他们有一个我用ajax发送的隐藏表单。
<li class="ui-widget-content ui-corner-tr">
<h5 class="ui-widget-header">Meat</h5>
<img src="images/meat.jpg"
alt="A chunk of meat" width="96" height="72" />
<a
href="images/meat.jpg" title="View larger image"
class="ui-icon ui-icon-zoomin">View larger</a>
<input type="text"
class="ingrediente hidden" name="ingredient" value="Meat" />
</li>
这是一个垃圾箱的 html 结构:
<div id="trash3" class="trash ui-widget-content ui-state-default">
<h4 class="ui-widget-header">
<span>Padella</span>
<img src="images/fryingpan.jpg" alt="A frying pan"
width="96" height="72" />
</h4>
<form class="hidden internalForm" name="FryingPan" method="post" action="phasehandler.php">
</form>
<button id="dialogbutton1" class="create-user sendButton">Send trash3</button>
</div>
当按下(“#dialogbutton”)时,会使用 jquery 弹出一个对话框。这是代码:
$("[id *= dialog ]").button().click(function() {
$(".internalList").addClass("hidden");
$(this).addClass("hidden");
$(".internalForm").removeClass("hidden");
$(".internalForm").children().removeClass("hidden");
$babbo = $(this).parent();
$babbo.appendTo("#dialog-form");
$index = $("h4 img").index();
$("#dialog-form").dialog("open");
});
我想要的是在文本旁边显示成分图像。我需要知道那里的成分是什么,所以我考虑使用 document.image[] 数组,因为我发现如果煎锅的图像是 - 比如说 - 7 并且下一个垃圾桶是 10,那么包含成分的图像在煎锅中的位置是数字 8 和 9。我找不到另一种方法来使用 jQuery 的选择器来定位它们,并且使用 .index() 没有帮助,因为它返回相对于父容器而不是 DOM 的索引:-(
最佳答案
我认为您正在尝试解决尚未解决的问题。
如果您的所有图像都在某种容器中(例如 DIV),您可以使用 jQuery 来访问它们并根据您的喜好操作它们。
//set of all images inside container
$('#myContainer').find('img');
//want to style them all the same way? try adding a class to them
$('#myContainer').find('img').addClass('in_container');
//iterate over the set
$('#myContainer').find('img').each(function(index){
$(this).data('special', 'My current index is: ' + index);//store some data
});
//etc.
关于jquery - 获取元素的 DOM id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7138630/