2015-06-19 118 views
-1

我試圖通過使用JavaScript更改div的背景顏色,但未應用更改,因爲當我按下按鈕 時,瀏覽器爲頁面重新加載並恢復爲默認設置沒有改變。使用JavaScript更改div樣式,無需重新加載頁面

如何在沒有頁面重新加載或應用更改的情況下更改div的背景顏色?

+1

這是可能的,你只需要先給出標記 –

+3

如果你沒有發佈它,沒有人可以告訴你你的代碼有什麼問題。 – Gary

+0

聽起來像是瀏覽器問題。如果您使用Chrome,請使用隱身模式。這會每次清除緩存。 – FirebladeDan

回答

3

下面是使用jQuery一些代碼,更改背景不重裝:

<!doctype html> 
<html> 
<head> 
    <meta charset="utf-8"> 
    <title>Changing DIV Background Color</title> 
    <script src="https://code.jquery.com/jquery-2.1.4.min.js"></script> 
    <style> 
    #changing_background { 
    background-color: red; 
    min-height: 200px; 
    } 
    </style> 
</head> 
<body> 

<div id="changing_background"></div> 

<button id="change_background">Click Me</button> 

<script> 
    $("#change_background").click(function(e){ 
    $("#changing_background").css("background-color", "blue"); 
    }); 
</script> 

</body> 
</html> 
3

頁面重新加載是因爲您的按鈕位於表單內,當您單擊它時 - 您提交表單。

裏面的onclick功能,你需要防止默認動作,剛剛結束與:

return false; 

如果你問爲什麼:submit是默認的按鈕類型:

按鈕類型

  • 提交:按鈕提交表單數據到服務器。 如果未指定屬性,或者如果屬性爲 動態更改爲空值或無效值,則這是默認值。
  • 重置:該按鈕將所有控件重置爲其初始值。
  • button:該按鈕沒有默認行爲。它可以有客戶端腳本與元素的事件關聯,當事件發生時觸發該事件。

推薦閱讀:

+1

這隻適用於提交按鈕 – Gary

+0

對於任何按鈕 - [檢查此](http://jsfiddle.net/gdb37t5h/) – skobaljic

+1

有趣的捕獲,但不是「任何按鈕」。 'input type ='button''和'button type ='button'' [不要這麼做](http://jsfiddle.net/gdb37t5h/1/)。 – Gary

相關問題