Javascript wrap()元素的子元素
目前,我可以将整个li元素包装在带有链接的有序列表中:Javascript wrap()元素的子元素,javascript,jquery,html,css,Javascript,Jquery,Html,Css,目前,我可以将整个li元素包装在带有链接的有序列表中: $(e).wrap('<a href="#" onclick="window.open(\'/xyz/\');return false;"></a>'); HTML构造: <li class=""> <img src="http://img.example.com/images/bdb/2474566/600x338.jpg" class="xx"> </li> <
$(e).wrap('<a href="#" onclick="window.open(\'/xyz/\');return false;"></a>');
HTML构造:
<li class="">
<img src="http://img.example.com/images/bdb/2474566/600x338.jpg" class="xx">
</li>
<li class="">
<img src="http://img.example.com/images/bdb/2474566/600x338.jpg" class="xx">
</li>
<a onclick="window.open('/something/');return false;" href="#">
<li class="">
<img src="http://img.example.com/images/bdb/2474566/600x338.jpg" class="xx">
</li>
</a>
我如何才能将链接仅围绕图像本身而不是整个列表元素进行包装?试试这个
$("#ul li img").wrap('<a href="#" onclick="window.open(\'/xyz/\');return false;"></a>');
唯一成功的方法是:
var myImg = $(e).html();
$(e).html('<a href="#" onclick="window.open(\'/xyz/\');return false;">' + myImg + '</a>‘);
看看这是不是你想要的。关键是,在将e设置为jQuery对象之前,应该对其进行包装。然后,你想要什么就花$e.htmlis
var e = '<li class=""><img src="http://img.example.com/images/bdb/2474566/600x338.jpg" class="xx"></li><li class=""><img src="http://img.example.com/images/bdb/2474566/600x338.jpg" class="xx"></li>';
var $e = $("<ul>"+e+"</ul>");
$new.find("img").wrap('<a href="#" onclick="window.open(\'/xyz/\');return false;"></a>');
演示。我在$e.html中找到了我想要的图像标签:console.log'e是:'+$e.html;但是$e.find'img'。wrap;在图像之前设置链接…很奇怪,不是吗?我的另一个:e.html.wrap;什么都不做..@michbeck你到底想把它包在哪里?在文档加载时或在任何情况下?它位于图像滑块脚本中,其中图像加载到DOM内部列表itmes中。如果您对整个功能感兴趣,我可以通过电子邮件或skype@michbeck是的,你可以发送,你可以在我的个人资料中找到联系人我可以得到想要的结果吗?我需要的是在我想要的列表元素中有一个链接的imagetag:class=xx>你说我在$e.html中有我想要的图像标记,那么e是什么?变量e=$;对吗?e是整个列表项,其中包含我想要的图像标签: