我有一個JavaScript旋轉功能設置。它與div元素一起由一個按鈕動態生成。我很難知道如何正確地爲每個動態創建的元素附加這個旋轉滑塊,以便它可以單獨操作,而不是影響所有元素,只處理第一個創建的元素。正如所看到的例子:如何將javascript附加到動態創建的元素?
http://jsfiddle.net/fqjvd7sa/24/
旋轉功能
$(function() {
$('.s1').slider({
range: 'min',
min: -13,
max: 13,
slide: refreshRotate
});
function refreshRotate() {
var rotate = $('.s1').slider('value'),
x = $('.x');
x.html(rotate);
$('.list').css('-webkit-transform', 'rotate(' + rotate + 'deg)');
$('.list').css('-moz-transform', 'rotate(' + rotate + 'deg)');
$('.list').css('-ms-transform', 'rotate(' + rotate + 'deg)');
$('.list').css('-o-transform', 'rotate(' + rotate + 'deg)');
$('.list').css('transform', 'rotate(' + rotate + 'deg)');
}
});
生成動態
var dom = {
// Build the main button
buildButton: function(){
// Create new DOM element - div
var button = document.createElement('div');
// Set element attribute
button.setAttribute('id', 'strip');
button.setAttribute('class', 'newclass');
// Style the element
button.style.width = "500px";
button.style.height = "400px";
button.style.margin="0px 10px 0px 30px";
// Add content - FileAPI
button.innerHTML = '<div class="s1"></div><div class="list"></div>';
// Print element
document.body.appendChild(button);
}
};
document.getElementById("first-div").onclick = dom.buildButton;
您每次添加按鈕時都會重複'id =「panzoom」''。 ID應該是唯一的。 – Barmar 2014-09-01 08:55:27
是的,我確實意識到這一點,並刪除了ID,我的問題仍然存在。謝謝你的建議。 – 2014-09-01 08:59:33