1

これについては、もう 1 組の目が必要だと思います。div の onclick イベントが機能していないようです。何か案は?

<!DOCTYPE html> 
<html> 
 <head>
 <meta charset="UTF-8">
 <title="My First Program"/>

 <script type="text/javascript">
      window.onload = function(){
           window.alert("If you see me then the page has loaded"); 
           click(); 
      }

      //we do programming here 
      /*because
        it is 
        fun*/
      window.alert("Helo World!"); 

      function click(){
           window.alert("CLICK!!!!");
      }


 </script>

 </head>
 <body>
      <div>This web page will run my first program</div>
      <!--this will be awesome-->
      <br>
      <br>
      <br>
      <div id="d1" onclick="click()">Click me</div>
 </body>

また、記録のために、これは私の最初のプログラムではありません。

4

2 に答える 2

5

html の形式が正しくありません。タイトルタグは次のようにする必要があります:

<title>My First Program</title>

また、関数に組み込み関数と同じ名前を付けたため、名前の競合があるようです。「クリック」関数の名前を「myclick」などに変更します。

それを修正したら、他のすべてがうまくいくはずです。

何かがおかしくなったとき、常に最初にすべきことは、マークアップを検証することです。

http://validator.w3.org/check

これは、マークアップの完全で機能するバージョンです。

<!DOCTYPE html> 
<html> 
 <head>
 <meta charset="UTF-8">
 <title>My First Program</title>

 <script type="text/javascript">
      window.onload = function(){
           window.alert("If you see me then the page has loaded"); 
           click(); 
      }

      //we do programming here 
      /*because
        it is 
        fun*/
      window.alert("Helo World!"); 

      function myclick(){
           window.alert("CLICK!!!!");
      }


 </script>

 </head>
 <body>
      <div>This web page will run my first program</div>
      <!--this will be awesome-->
      <br>
      <br>
      <br>
      <div id="d1" onclick="myclick()">Click me</div>
 </body>
于 2013-01-26T01:04:54.050 に答える
0

このような質問をどこかで目にするたびに、私が出す典型的な答えは、「イベント処理に Netscape モデルを使用しないでください」です。

これを読んでください - http://www.quirksmode.org/js/introevents.html

更新:「クリック」は、イベントなどに既に登録されているため、関数の名前としてはあまり適していないようです。これが機能しなかった可能性があります。私はそれをキャッチする必要がありました。

于 2013-01-26T01:14:55.200 に答える