[英]Make a js code with a special format
I want get date-type
and date-title
in div.Img
and make it as following format by jquery in the end putting it in a jQuery function, How is it? 我想在
div.Img
获取date-type
和date-title
,并通过jquery使其遵循以下格式,最后将其放入jQuery函数中,怎么回事?
This is div.Img
: 这是
div.Img
:
<div class="Img" date-type="http://fancyapps.com/fancybox/demo/1_b.jpg" date-title="manual 1st title"></div>
<div class="Img" date-type="http://fancyapps.com/fancybox/demo/2_b.jpg" date-title="2nd title"></div>
<div class="Img" date-type="http://fancyapps.com/fancybox/demo/3_b.jpg" date-title="3rd title"></div>
This is my format
: i want get in result as fllowing fomat of date-type
and date-title
in div.Img
, with {
}
and ,
. 这是
my format
:我想以div.Img
中带有{
}
和,
的date-type
和date-title
格式作为结果。
{
href : 'http://fancyapps.com/fancybox/demo/1_b.jpg',
title : 'manual 1st title'
},
{
href : 'http://fancyapps.com/fancybox/demo/2_b.jpg',
title : '2nd title'
},
{
href : 'http://fancyapps.com/fancybox/demo/3_b.jpg',
title : '3rd title'
}
Please give me a example in jsfiddle.net 请在jsfiddle.net给我一个例子
Custom attribute should be data-*
prefixed not date-*
自定义属性应为
data-*
前缀,而非date-*
<div class="Img" data-type="http://fancyapps.com/fancybox/demo/1_b.jpg" data-title="manual 1st title">1</div>
Then .map()
can be used in conjunction with .data()
然后
.map()
可以与.data()
结合使用
var arr = $('div.Img').map(function (elem) {
return {
href: $(this).data('type'),
title: $(this).data('title')
}
}).get();
console.log(arr);
Here is a working code snippet sample. 这是一个工作代码片段示例。
function getDivInfo($div) { return { "href": $div.attr("date-type"), "title": $div.attr("date-title") }; } $(function() { var div_info = []; $('div.Img').each(function() { div_info.push(getDivInfo($(this))); }); console.log(div_info); });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div class="Img" date-type="http://fancyapps.com/fancybox/demo/1_b.jpg" date-title="manual 1st title"></div> <div class="Img" date-type="http://fancyapps.com/fancybox/demo/2_b.jpg" date-title="2nd title"></div> <div class="Img" date-type="http://fancyapps.com/fancybox/demo/3_b.jpg" date-title="3rd title"></div>
Please note that custom attributes should begin with data-
and not date-
. 请注意,自定义属性应以
data-
而不是date-
开头。
Use .map() in Jquery. 在Jquery中使用.map() 。
The $.map() method applies a function to each item in an array or object and maps the results into a new array
$ .map()方法将函数应用于数组或对象中的每个项目,并将结果映射到新数组中
var res = $(".Img").map(function() {
return {"href":$(this).attr('date-type'),
"title":$(this).attr('date-title')
}
}).get();
console.log(res);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.