0
我使用three.js在this page上顯示360圖像。然而,頁面的第一部分(滾動到頂部,或按照this link),有另一個360圖像,它曾經以相同的方式工作,現在沒有。Javascript - 一個函數的變量干擾另一個
在手機上,兩者都正常工作(在移動設備上使用不同的腳本),但在桌面上,第二個似乎以某種方式干擾第一個。
我使用three.js在this page上顯示360圖像。然而,頁面的第一部分(滾動到頂部,或按照this link),有另一個360圖像,它曾經以相同的方式工作,現在沒有。Javascript - 一個函數的變量干擾另一個
在手機上,兩者都正常工作(在移動設備上使用不同的腳本),但在桌面上,第二個似乎以某種方式干擾第一個。
快速查看後,發現您的移動代碼是封閉在一個自我執行的函數:
(function() {
// Mobile code here
})();
但你非移動代碼不是,這意味着具有相同名稱的所有變量進入全局window
範圍並相互覆蓋。
這可能可以解釋爲什麼您的移動代碼工作,而非移動代碼無法工作。
試着把你的非移動代碼放在一個自動執行的函數中,看看是否有幫助。
我懷疑這不是一個three.js問題,但可能只是一個JavaScript問題。
@genpfault這不是一個'opengl-es'問題。請不要將'opengl-es'標籤添加到three.js問題中。如果你想刪除'opengl'標籤,那很好。謝謝。 – WestLangley
@WestLangley:適合我。 – genpfault