第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

我在執(zhí)行簡(jiǎn)單的切換程序時(shí)收到此錯(cuò)誤

我在執(zhí)行簡(jiǎn)單的切換程序時(shí)收到此錯(cuò)誤

[我不知道為什么會(huì)收到此錯(cuò)誤,我的 JS 代碼直接在瀏覽器的控制臺(tái)中運(yùn)行良好,但是當(dāng)我嘗試將 .js 文件附加到我的 html 時(shí),我收到此錯(cuò)誤。var button1 = document.querySelector("button");var isPurple = false;button1.addEventListener("click", function(){? ? if(isPurple){? ? ? ? document.body.style.background = "white";? ? ? ? isPurple = false;? ? } else {? ? ? ? document.body.style.background = "purple";? ? ? ? isPurple = true;? ? }});<!DOCTYPE html><html><head>? ? <meta charset="UTF-8">? ? <meta name="viewport" content="width=device-width, initial-scale=1.0">? ? <title>Document</title>? ? <script src="MyTitle.js"></script></head><body>? ? <button>click me</button></body></html>
查看完整描述

2 回答

?
楊__羊羊

TA貢獻(xiàn)1943條經(jīng)驗(yàn) 獲得超7個(gè)贊

提供的代碼似乎工作正常 - 正如注釋中所述 - 您放置外部js的位置 - 有所不同 - 它應(yīng)該放置在代碼的末尾 - 就在結(jié)束正文標(biāo)記之前。通常,將所有外部 CSS 文件放在 head 中,將所有外部 js 文件放在 body 中,除非 javascript 中需要一些基于渲染的邏輯。


在本例中 - javascript 旨在使用 querySelector() 來(lái)識(shí)別按鈕 - 但它不在 DOM 中,因此無(wú)法識(shí)別。


另外 - 您可以簡(jiǎn)化您的代碼,只需在單擊時(shí)切換變量,然后使用三元組來(lái)添加/刪除一個(gè)類,并將背景顏色設(shè)置為該類。使用附加樣式的類總是比通過(guò) JavaScript 修改 CSS 更好。


var button1 = document.querySelector("button");

var isPurple = false;


button1.addEventListener("click", function(){

  isPurple = !isPurple;


  isPurple 

   ? document.body.classList.add('purple')

   : document.body.classList.remove('purple')

});

.purple {

 background: purple;

}

<!DOCTYPE html>

<html>

<head>

    <meta charset="UTF-8">

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>Document</title>

</head>

<body>

    <button>click me</button>

    <script src="MyTitle.js"></script>

</body>

</html>

當(dāng)然 - 您實(shí)際上可以完全刪除變量 - 如果您可以在可能的情況下遠(yuǎn)離全局變量,它總是更好 - 下面只是在單擊按鈕時(shí)切換類。


var button1 = document.querySelector("button");



button1.addEventListener("click", function(){

  document.body.classList.toggle('purple')

});

.purple {

 background: purple;

}

<!DOCTYPE html>

<html>

<head>

    <meta charset="UTF-8">

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>Document</title>

    <script src="MyTitle.js"></script>

</head>

<body>

    <button>click me</button>

    <script src="MyTitle.js"></script>

</body>

</html>


查看完整回答
反對(duì) 回復(fù) 2023-07-14
?
HUH函數(shù)

TA貢獻(xiàn)1836條經(jīng)驗(yàn) 獲得超4個(gè)贊

問(wèn)題是,當(dāng) JavaScript 運(yùn)行時(shí),按鈕元素還不存在于 DOM 中。之后加載它,然后它應(yīng)該就可以正常存在了。


一般來(lái)說(shuō),明智的做法是加載此類 JS,即在加載時(shí)立即運(yùn)行,或者將其放入 window.onload 函數(shù)中(特別是如果代碼依賴于已加載的圖像)。


<!DOCTYPE html>

<html>

<head>

    <meta charset="UTF-8">

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>Document</title>

   

</head>

<body>

    <button>click me</button>

<script src="MyTitle.js"></script> </body>

</html>


查看完整回答
反對(duì) 回復(fù) 2023-07-14
  • 2 回答
  • 0 關(guān)注
  • 160 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)