![](/img/trans.png)
[英]Javascript - Uncaught ReferenceError: function is not defined
[英]JavaScript - Uncaught ReferenceError: my function is not defined
有人可以幫助我為什么會收到此錯誤嗎?
未捕獲的ReferenceError:未定義selected_1
未捕獲的ReferenceError:未定義selected_2
這是我的代碼:
<img src="/css/img/firstRoom_selected.png" onclick="selected_1()" id="firstRoom" style="cursor:pointer;">
<img src="/css/img/secondRoom.png" onclick="selected_2()" style=" cursor:pointer;">
<script>
$( document ).ready(function() {
function selected_1() {
if (document.getElementById("firstRoom").src == "/css/img/firstRoom.png")
{
document.getElementById("firstRoom").src = "/css/img/firstRoom_selected.png";
}
}
function selected_2() {
if (document.getElementById("firstRoom").src == "/css/img/firstRoom_selected.png")
{
document.getElementById("firstRoom").src = "/css/img/firstRoom.png";
document.getElementById("secondRoom").src = "/css/img/secondRoom_selected.png";
}
}
});
</script>
在此先多謝! :)
您無需使用$( document ).ready
<img src="/css/img/firstRoom_selected.png" onclick="selected_1()" id="firstRoom" style="cursor:pointer;">
<img src="/css/img/secondRoom.png" onclick="selected_2()" style=" cursor:pointer;">
和js:
<script>
function selected_1() {
if (document.getElementById("firstRoom").src == "/css/img/firstRoom.png")
{
document.getElementById("firstRoom").src = "/css/img/firstRoom_selected.png";
}
}
function selected_2() {
if (document.getElementById("firstRoom").src == "/css/img/firstRoom_selected.png")
{
document.getElementById("firstRoom").src = "/css/img/firstRoom.png";
document.getElementById("secondRoom").src = "/css/img/secondRoom_selected.png";
}
}
</script>
最好這樣做:
$(function(){
$('#firstRoom').click(selected_1)
})
您已經使用$document.ready
在另一個匿名函數中定義了函數,因此它在全局范圍內不可見。
您的圖像正在全局范圍內尋找selected_1
和selected_2
,因此找不到它。
在$(document).ready
處理程序之外定義函數
如果您希望在處理程序中使用函數,則將點擊處理程序附加在ready函數中。 試試這個腳本
您還應該考慮預加載圖像,這將是另一個問題。
<script>
function selected_1() {
if (document.getElementById("firstRoom").src == "/css/img/firstRoom.png") {
var image = new Image()
image.src = "/css/img/firstRoom_selected.png";
document.getElementById("firstRoom").src = image.src
}
}
function selected_2() {
if (document.getElementById("firstRoom").src == "/css/img/firstRoom_selected.png") {
var image = new Image()
image.src = "/css/img/firstRoom.png";
document.getElementById("firstRoom").src = image.src
var image2 = new Image()
image2.src = "/css/img/secondRoom_selected.png";
document.getElementById("secondRoom").src = image2.src
}
}
</script>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.