use*_*846 5 javascript html5 custom-data-attribute
我有一个自定义JS函数,可在加载时在页面中的所有元素中创建/注入自定义链接。
操作之前:
<div class="myimagediv">
<img class="img-tag" src="#" data-src="alternative content I need" alt="">
</div>
Run Code Online (Sandbox Code Playgroud)
现在,此自定义函数可以操纵元素:
[].forEach.call(document.querySelectorAll('.myimagediv'), function(elem) {
old_html = elem.innerHTML;
new_html = '<a class="customlink" href="' + elem.querySelector('img').src + '">' + old_html + '</a>';
elem.innerHTML = new_html;
});
Run Code Online (Sandbox Code Playgroud)
新操作的元素:
<div class="myimagediv">
<a class="customlink" href="this should be the content of my data-src" title="">
<img class="img-tag" src="#" data-src="alternative content I need" alt="">
</a>
</div>
Run Code Online (Sandbox Code Playgroud)
如何从IMG标签获取data-src属性并将其注入到新创建的自定义链接函数中?
我应该使用var吗?然后调用它,但是我无法掌握如何读取data-src并重新使用它。
任何帮助将不胜感激。
只需使用getAttributeimage元素的方法即可:
var dataSrc = elem.querySelector('img').getAttribute('data-src');
Run Code Online (Sandbox Code Playgroud)
小智 5
示例 - 如何在 vanilla JS 中读取 data-* 属性:
var elm = document.querySelector('any-tag')
var first = elm.dataset.whatever
var second = elm.dataset.somethingElse // camel case for multi-word
console.log(first, second)Run Code Online (Sandbox Code Playgroud)
<any-tag data-whatever="value1" data-something-else="value2" />Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7955 次 |
| 最近记录: |