2014-06-26 88 views
-3

爲什麼我點擊工作jQuery的點擊()圖像

的jQuery:

$(document).ready(function(){ 
    $('#slotclick').click(function(){ 
     $(this).append('<div id=\"alertfade\"><div class=\"alert\">Slotje<font style=\"float:right;\"><a href=\"#\" onclick=\"window.location.reload()\">X</a></font></div></div>'); 
    }); 

    $('#stickyclick').click(function(){ 
     $(this).append('<div id=\"alertfade\"><div class=\"alert\">Sticky<font style=\"float:right;\"><a href=\"#\" onclick=\"window.location.reload()\">X</a></font></div></div>'); 
    }); 
}); 

HTML:

<img src="./../../assets/images/icons/slot.png" id="slotclick"> 
<img src="./../../assets/images/icons/sticky.png" id="stickyclick"> 

當點擊,它必須打開一個警告窗口,已用css做到這一點! 但是,如果我點擊圖像插槽或粘,它不會打開

+6

您如何將DIV追加到圖像,一個沒有孩子並且自閉的元素? – adeneo

+0

哦上帝'' – JJJ

+0

如果你按下X(float:right) –

回答

0

你不能做$(this).append,因爲圖像標籤不能有任何孩子。

所以無論是在身體追加或使用.after()而不是追加圖像

+0

@ adeneo謝謝,這只是我的打字錯誤 –

0

後,只需插入您不能<div>追加到<img>。如果您想在點擊圖像後添加某些內容,請將圖像包裝在<div>中,然後追加到該圖像上。

0

這是你所需要的:

HTML:

<div id="slotDiv"> <img src="./../../assets/images/icons/slot.png" id="slotclick"> </div> 
<div id="stickyDiv"> <img src="./../../assets/images/icons/sticky.png" id="stickyclick"> </div> 

的javascript:

$(document).ready(function(){ 
$('#slotclick').click(function(){ 
    $('#slotDiv').append('<div id=\"alertfade\"><div class=\"alert\">Slotje<font style=\"float:right;\"><a href=\"#\" onclick=\"window.location.reload()\">X</a></font></div></div>'); 
}); 

$('#stickyclick').click(function(){ 
    $('#stickyDiv').append('<div id=\"alertfade\"><div class=\"alert\">Sticky<font style=\"float:right;\"><a href=\"#\" onclick=\"window.location.reload()\">X</a></font></div></div>'); 
    }); 
}); 
+0

他需要使用這個 – neoDev

+0

謝謝,但我如何防止換行符? –

+0

其工作方式:http://prntscr.com/3wss8s –

1

這裏工作演示:

$(document).ready(function(){ 
    $('#slotclick').click(function(){ 
     $(this).after('<div id=\"alertfade\"><div class=\"alert\">Slotje<font style=\"float:right;\"><a href=\"#\" onclick=\"window.location.reload()\">X</a></font></div></div>'); 
    }); 

    $('#stickyclick').click(function(){ 
     $(this).after('<div id=\"alertfade\"><div class=\"alert\">Sticky<font style=\"float:right;\"><a href=\"#\" onclick=\"window.location.reload()\">X</a></font></div></div>'); 
    }); 
}); 


jsFiddle

+0

任何人都可以解釋一下,代碼是如何工作的?這不適合我。 – Indra

+0

@Indra - 與OP的代碼完全一樣,小提琴也不起作用,但我想人們喜歡酷按鈕? – adeneo

+0

嗯,這是完全一樣的代碼,可能他忘了在編輯後更新代碼,但不知道其他人是如何接受它的。 – Indra

0

你應該試試這個: -

$(document).ready(function(){ 
$('#slotclick').click(function(){ 
      $(this).after('<div id=\"alertfade\"><div class=\"alert\">Slotje<font style=\"float:right;\"><a href=\"#\" onclick=\"window.location.reload()\">X</a></font></div></div>'); 
}); 

$('#stickyclick').click(function(){ 
      $(this).after('<div id=\"alertfade\"><div class=\"alert\">Sticky<font style=\"float:right;\"><a href=\"#\" onclick=\"window.location.reload()\">X</a></font></div></div>'); 
}); 

});

因爲當你編寫append時,html就像,所以你無法看到潛水,否則你的代碼正在工作。