获取图像 src,然后将其作为 href 应用于 .each 循环中
Get image src then apply it as href in .each loop
我有一个用jQuery Cycle构建的内容旋转器,并试图将jQuery Fancybox添加到其中。
.HTML:
<div class="secRotatorSlide">
<a href="" class="iframe enlargePic">Enlarge</a>
<img class="slideImg" src="secRotatorImg/slide1.png" alt="Slide 1" />
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p>
</div>
上述 HTML 有多组。 所有设备都正确旋转。
j查询:
jQuery('.secRotatorSlide').find('.slideImg').each(function() {
var iframeSrc = jQuery(this)[0].src;
//alert(iframeSrc)
jQuery('a.enlargePic').attr('href', iframeSrc);
});
如果我注释掉设置 href 的行,并取消注释警报行,它将一个接一个地正确提醒每个 src。 如果我保持原样,它会从最后一组 html 中获取图像 src,并将其应用于所有 html 集中所有 href 的每个 href。
我做错了什么? 我假设它在jQuery的最后一行,但我不确定。 我尝试在最后一行中使用this
,但这根本没有作用。
你的选择器,jQuery('a.enlargePic')
太通用了。这将在 DOM 中找到所有匹配的元素,您将继续为其设置 href 值。您需要限制其范围。
尝试: jQuery(this).siblings('a.enlargePic').attr('href', iframeSrc);
这样,您只为作为您正在处理的元素的同一父级(兄弟姐妹)的子元素设置值。
http://api.jquery.com/siblings/
编辑:如果你的所有图像和锚点共享同一个父级,那么考虑$.prev()
jQuery(this).prev('a.enlargePic').attr('href', iframeSrc);
选择器a.enlargePic
选择具有特定类的 DOM 中的所有链接。 使用 .prev()
定位当前图像旁边的唯一
相关文章:
- 将函数的上下文应用于javascript变量
- 将CSS应用于printWindow.print();在Javascript中
- 如何将CSS(特别是填充/边距)应用于select下拉菜单的选项或optgroup
- $scope.apply()何时应用于angular
- Javascript非常简单:'阅读更多''显示较少'应用于Wordpress的功能
- 尝试应用于<tr>在ng单击中
- 如何将javascript仅应用于1个表单中的2个表单提交按钮中的1个
- 将脚本应用于Angular 2上的输入
- Json和$scope的角度之间的差异$eval应用于JSON字符串时
- 如何将参数应用于String.prototype.format函数
- 动态地将过滤器应用于 JSON.parse()
- 空的 href 不适用于 javascript
- $location更改不适用于ngchange,而是应用于ngclick
- 如何将 :empty 选择器应用于 XML 文档
- 如何仅在文本字段中有值时才将自定义过滤器应用于 ng-repeat
- 如何使用 JavaScript 将样式应用于 CKEditor 中的选定文本
- MongoDB 无法将$addToSet应用于 Meteor JS 中的非数组
- 将类应用于jquery ui对话框
- 获取图像 src,然后将其作为 href 应用于 .each 循环中
- 如果选中复选框,请将css应用于href