簡體   English   中英

按鈕onclick,一切都消失了

[英]Button onclick and everything disappears

我一直在嘗試編寫一個模擬這個例子的代碼(下面的代碼)。

 function closeMe(){ x=document.getElementById("demo"); x.style.display="none"; } function openMe(){ x=document.getElementById("demo"); x.style.display="block"; } 
  <h1>Changing the Style</h1> <p>JavaScript can change the style of an HTML element.</p> <button type="button" onclick="openMe()">Open!</button> <button type="button" onclick="closeMe()">Close!</button> <p id="demo">Extra details...You can open and close this paragraph using the buttons above.</p> 

不幸的是,在我自己的代碼中,當我點擊“打開”按鈕時,所有的東西都消失了。 我無法弄清楚為什么。

 function open() { x = document.getElementById("demo"); x.style.display = "block"; } function close() { x = document.getElementById("demo"); x.style.display = "none"; } 
 <p id="demo">Click me to change my HTML content (innerHTML).</p> <p> this shouldnt disappear</p> <button onclick="open()">open button</button> <button onclick="close()">close button</button> 

誰能給我一些善意的建議?

將顯示設置為阻止時,在“塊”周圍添加引號

function open(){
    x=document.getElementById("demo");
    x.style.display="block";
}

您的函數名稱已被使用。 除了可以測試的函數名稱之外,保持代碼不變,這一切都按預期工作。

  function open123(){ let x=document.getElementById("demo"); x.style.display="block"; } function close123(){ let x=document.getElementById("demo"); x.style.display="none"; } 
 <p id="demo">Click me to change my HTML content (innerHTML).</p> <p> this shouldnt disappear</p> <button onclick="open123()">open button</button> <button onclick="close123()">close button</button> 

所以這些函數都在窗口范圍內,所以我稱之為window.function名稱。 我還在函數中聲明了變量,因為它拋出了一些javascript錯誤。

現在通常不需要這些,但我覺得jsfiddle使用“use strict”; 這可能會迫使這些區別。 不過我對其他建議持開放態度。

希望這可以幫助。

 function open() { var x = document.getElementById("demo"); x.style.display = "block"; } function close() { var x = document.getElementById("demo"); x.style.display = "none"; } 
 <!DOCTYPE html> <html> <body> <p id="demo">Click me to change my HTML content (innerHTML).</p> <p> this shouldnt disappear</p> <button onclick="window.open();">open button</button> <button onclick="window.close();">close button</button> </body> </html> 


打開和關閉是保留關鍵字。 您需要重命名close&open方法。

open()方法打開一個新的瀏覽器窗口。

close()方法關閉窗口。

你需要在函數中使用大寫字母,樣式必須在引號之間;

試着干凈的代碼:)

function Open(){
        x = document.getElementById("demo");
        x.style.display = "block";
    }

        function Close(){
        x = document.getElementById("demo");
        x.style.display = "none";
    }

open()和close()是保留關鍵字。 請更改函數名稱,如openOne()和closeOne(),它的工作原理。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM