![](/img/trans.png)
[英]How can I use inline style with data attribute and browser prefix using jquery
[英]How can I use inline style with data attribute using JavaScript no jQuery
我可以像這樣在我的 html 文件中使用
<div data-width="250px"></div>
<div data-width="calc(100% - 300px);"></div>
我需要這樣輸出
<div data-width="250px" style="width:250px"></div>
<div data-width="calc(100% - 300px);" style="width:calc(100% - 300px);"></div>
你可以使用如下
<script>
document.getElementsByTagName("div")[0].setAttribute("data-width","250px");
document.getElementsByTagName("div")[0].setAttribute("style","width:250px");
document.getElementsByTagName("div")[1].setAttribute("data-width","calc(100% - 300px)");
document.getElementsByTagName("div")[1].setAttribute("style","width:calc(100% - 300px);");
</script>
您可以簡單地使用querySelectorAll和forEach循環將style
寬度屬性應用於存儲在data-width
屬性中的divs
。
要從每個元素獲取data-width
,我們可以使用getAttribute方法。
編輯:您可以在同一個querySelectorAll
選擇多個元素,如section
、 h1
、 span
現場演示:僅使用 JavaScript
let getDivs = document.querySelectorAll('div, h1, section') getDivs.forEach(function(div) { let data = div.getAttribute('data-width') div.style.width = data })
<div data-width="250px">1</div> <div data-width="calc(100% - 300px)">2</div> <h1 data-width="210px">3</h1> <section data-width="150px">4</section>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.