javascript - JQuery:使用相同的自定义属性创建相应的元素

标签 javascript jquery

在这里摆弄:http://jsfiddle.net/yv1vLhd9/

无论出于何种原因,假设我想使用 JQuery 将三个 dom 元素替换为另外三个 dom 元素,但我想将一个或多个数据属性从第一个元素传输到其相应的替换元素上。

给定以下 HTML:

<div class='original' data-custom="dog"></div>
<div class='original' data-custom="cat"></div>
<div class='original' data-custom="sheep"></div>

以及以下 CSS:

div {
  width: 100px;
  height: 100px;  
}

div:before {
  content: attr(data-custom);
}

.original {
  border: blue solid 1px;
}

.new {
  border: pink solid 1px;
}

如何确保每个自定义数据属性都有一个新元素?

例如:

$(document).ready( function(){
  var $originalEl = $('.original')
  var originalData = $originalEl.data('custom')
  var replacement = '<div class="new" data-custom="' + originalData + '"></div>'
  $originalEl.after(replacement).hide()
});

但这会创建三个新的 data-custom="dog"属性。

最佳答案

您必须使用 $.each 作为元素。 在声明 $originalEl

后开始
$originalEl.each(function(){
    // code here
})

这是您更新的代码 http://jsfiddle.net/yv1vLhd9/4/

关于javascript - JQuery:使用相同的自定义属性创建相应的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34276503/

相关文章:

javascript - 如何从 javascript 中的字符串中删除字母并返回字符串的其余部分?

javascript - 处理 4k 图片的 horizo​​ntalHandle

javascript - 如何在 JavaScript 中将数值转换为文本?

javascript - 如何使用js固定和取消固定元素

jquery - 获取动态创建的div的高度

javascript - 隐藏 div 的高度不会随 Masonry 内容扩展

javascript - 如何从 Controller 函数内部获取 $scope?

jquery - 使用 jQuery 滚动页面

javascript - 鼠标悬停父级 = find() 子级 ID 名称

使用 JSONP 的 Jquery Mobile 自动完成