[英]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.