javascript - 制作特殊格式的js代码

标签 javascript jquery

我想在div.Img中获取date-typedate-title,并通过jquery将其设置为以下格式,最后放入它在 jQuery 函数中,怎么样?

这是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>

这是我的格式:我想在div中得到date-typedate-title的以下格式的结果.Img,带有 { },

    {
        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'
    }

请给我一个jsfiddle.net中的例子

最佳答案

自定义属性应以 data-* 为前缀,而不是 date-*

<div class="Img" data-type="http://fancyapps.com/fancybox/demo/1_b.jpg" data-title="manual 1st title">1</div>

然后.map()可与 .data() 结合使用

var arr = $('div.Img').map(function (elem) {
    return {
        href: $(this).data('type'),
        title: $(this).data('title')
    }
}).get();

console.log(arr);

Fiddle example

关于javascript - 制作特殊格式的js代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31019791/

相关文章:

javascript - 导入 “@smui/fab ”后CSS无法在Svelte中正常工作吗?

javascript - 如何在不覆盖当前文本的情况下向文本框添加文本?

javascript - 正则表达式可能包含一个字符

javascript - ng-hide完成后添加一个功能

javascript - JQuery Terminal term.echo 来自另一个函数?

javascript - 如何将数组值添加在一起直到它们达到特定数字,然后使用添加的值创建对象?

javascript - 这是怎么回事?复选框不起作用

javascript - 如何继续页面上的特定元素

jquery - 为什么我在清除数据表时得到 .clear() is not a function ?

javascript - 更改输入值或添加新输入(如果不存在)