我有一個圖像在點擊後發生變化,並在點擊後保持2秒。檢查圖像來源是否包含值
這IMG
src
是用jQuery更改和setTimeout
後源返回。問題是,如果用戶在2秒鐘內再次點擊,源代碼會變爲無效位置。
我試圖防止這種通過檢查圖像的當前src
包含值_hover.png
發生的事情:
if ('ThisIMG img[src*="_hover.png"]') {
console.log("yes it does");
}
我已經在這個if語句嘗試過多種方法,我似乎無法得到正確的論據。
這裏有一些不同的東西我曾嘗試:
$('.myImage').on({'click': function(){
var ThisIMG = $(this);
//if (ThisIMG.src == '_hover') {
if ('ThisIMG img[src*="_hover.png"]') {
console.log("yes it does");
}
//if (ThisIMG.attr("src").contains "_hover.png") {
// console.log('yes it does');
//};
// Method to change image source on click:
var src = $(ThisIMG).attr("src").replace('.png', '_hover.png');
$(ThisIMG).attr("src", src);
console.log(src);
setTimeout(function() {
console.log("in timeout");
var src = $(ThisIMG).attr("src").replace("_hover.png", ".png");
$(ThisIMG).attr("src", src);
},1000);
}
});
HTML:
<img class="myImage" src="graphics/1.png" />
那是不必要的{旁邊點擊?應該不是.on('click',function(){ – Dan
@Dan好眼睛,替換爲$('。tileImage')。on(「click」,function(){'並且移除了大括號。 – block14