[英]How to select elements to apply a transformation(rotation, etc) to?
我正在嘗試旋轉或變換div中的所有元素,但目前具有此功能。 它將旋轉頁面上的所有元素。 如何選擇div或要旋轉的類? Array.from(document.all).forEach(o => o.style.transform = "rotate(" + Math.floor(Math.random() * 27 - 12) + "deg)")
您需要使用document.getElementsByClassName()
或document.getElementsByTagName()
:
var selected = document.getElementsByClassName('myClass');
Array.from(selected).forEach(o => o.style.transform = "rotate(" + Math.floor(Math.random() * 27 - 12) + "deg)")
function randomRotate(selector) {
var elem = document.querySelector(selector);
if (!elem) return;
elem.style.transform = "rotate(" + Math.floor(Math.random() * 27 - 12) + "deg)"
}
randomRotate('.someClass');
基本上,它與您的代碼沒有相同之處,但是它不是通過選擇器來查找所有元素而是查找所有元素。 如果有多個具有此類的元素,它將僅對其第一個應用旋轉。
因此,如果要將旋轉應用於該類的所有對象,則應使用另一個函數:
function randomRotate(selector) {
var elems = document.querySelectorAll(selector);
if (elems.length === 0) return;
elems.forEach(function(el){
el.style.transform = "rotate(" + Math.floor(Math.random() * 27 - 12) + "deg)"
})
}
randomRotate('.someClass')
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.