<img src="" class="className" click="" id='button4' u="button6" r="button5" l="ele1" d="" />
我有一個圖像,其中我需要更改「U」數據類型的值。 「U」數據由我正在使用的開發人員實施,我需要能夠使用jQuery在每15秒的指定時間線的循環中更改其值。用jQuery處理自定義值
我可以找出循環部分,但我只是想看看是否有一種方法來操縱使用jQuery的「u」值。
<img src="" class="className" click="" id='button4' u="button6" r="button5" l="ele1" d="" />
我有一個圖像,其中我需要更改「U」數據類型的值。 「U」數據由我正在使用的開發人員實施,我需要能夠使用jQuery在每15秒的指定時間線的循環中更改其值。用jQuery處理自定義值
我可以找出循環部分,但我只是想看看是否有一種方法來操縱使用jQuery的「u」值。
嘗試
setInterval(function(){
var val = $('#button4').attr('u').substring(6);
$('#button4').attr('u', 'button' + (1 + +val))
}, 1000)
演示:Fiddle
這樣的:
$("#button4").attr("u", "new value");
可以更改u
屬性(順便說一句,如果你從u
到data-u
切換那麼這將是一個有效的屬性,HTML5下):
$('img').attr('u', function(i,u) {
/* i is the index of the current image among all the images returned by the selector,
u is the current value of that attribute */
return u.slice(0, -1) + (parseInt(u.replace(/\D/g,''), 10) + 1);
});
雖然新的價值應該如何影響,由循環或其他變量,由於有限的信息在問題本身是未知的。
爲了演示如何使用(在HTML5)的data-*
屬性,允許自定義屬性是有效的:
<img src="http://placekitten.com/400/500" class="className" click="" id='button4' data-u="button6" data-r="button5" data-l="ele1" data-d="" />
用下面的jQuery:
$('img').attr('data-u', function (i, u) {
return u.replace(/\d+$/,'') + (parseInt(u.replace(/\D/g, ''), 10) + 1);
});
參照張貼在另一個問題(Using a function to update a value within the data() method of jQuery sets the variable equivalent to the anonymous function, not the return value),該data()
方法不接受一個函數作爲一個回調,因爲attr()
做,這就是爲什麼我用.attr('data-u', function(){/*...*/})
而非data()
方法本身(的答案,雖然我首先嚐試,哪個沒有工作)。
參考文獻:
您可以共享圖像標籤的標記和數值更改 –
它可以像'$一樣簡單(「IMG的邏輯[ü ]')。attr('u','')' –
當然,我已經添加了上面的代碼。就邏輯而言,我實際上需要在每15秒的循環中更改「u」值。所以在這種情況下,我可以每15秒將button6上的「u」更改爲button7或** 8。 – Brock