2016-05-05 49 views
1

試圖用jQuery改變一個項目的類,但我似乎無法使它工作。出於某種原因,沒有任何事情發生。點擊更改課程無法正常工作?

代碼:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.2/jquery.min.js"></script> 
<script> 
    $("#theSpinner").click(function() { 
     $("#theSpinner").toggleClass("spinning"); 
    }); 
</script> 

<a href="#" id="reload"> 
    <img src="spinbut.png" style="width:100px;height:100px;" id="theSpinner" class="notspinning"> 
</a> 

我試着:

$("#theSpinner").click(function() { 
    $("#theSpinner").removeClass("notspinning"); 
    $("#theSpinner").addClass("spinning"); 
}); 

藏漢作爲$("#reload")代替$("#theSpinner"),並用onClick=""到含有addClass/removeClass部分JavaScript函數。

我真的不知道是什麼問題,但圍繞這頭公牛的任何方式都會讓我很開心。

+0

作爲附加註釋,你應該使用'this'而不是相同的選擇點擊功能裏面... – DarkAjax

+0

@DarkAjax我!這是在原來的代碼,我只是越來越絕望。雖然謝謝! –

+0

你的代碼工作正常。你期望看到什麼? – Gerard

回答

5

嘗試「文件準備」塊內包裝jQuery代碼,以確保jQuery的已加載調用你的函數之前:

<script> 
    // Example of a document ready function 
    $(function(){ 
     // When jQuery has loaded, wire up this function 
     $("#theSpinner").click(function() { 
      $(this).toggleClass("spinning"); 
     }); 
    }); 
</script> 

可以see a working example of this in action here及以下證明:

enter image description here

+0

我認爲OP想切換'旋轉'和'不旋轉'。 – Chris

+0

阿she。像魅力一樣工作。你能詳細說明爲什麼我的jQuery之前沒有加載?我的意思是,我基本上只是將我的代碼從一個頁面移至一個模板。 –

+0

@JohnSmith你在尋找'#theSpinner'之前,它沒有找到任何東西,因此沒有將點擊監聽器附加到任何東西上。 – DBS

-1

在這裏你去

<a href="#" id="reload"> <img src="spinbut.png" style="width:100px;height:100px;" id="theSpinner" class="notspinning"> </a> 
<script type="text/javascript"> 
    $("#theSpinner").click(function() { 
    $(this).toggleClass("notspinning spinning"); 
    }); 
</script> 
+0

沒有任何解釋?不是downvoter,但 –