• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ブラウザのアドレスバーで、コードを実行するのは?)

ブラウザのアドレスバーでコードを実行する仕組みとは

このQ&Aのポイント
  • ブラウザのアドレスバーでコードを実行する仕組みについて説明します。
  • 画像のあるサイトでブラウザのアドレスバーに特定のコードを貼り付け、エンターキーを押すと画像が回る仕組みがあります。
  • この仕組みはJavaScriptを使用しており、特定のコードがブラウザで実行されることによって画像が回転します。

質問者が選んだベストアンサー

  • ベストアンサー
  • venzou
  • ベストアンサー率71% (311/435)
回答No.2

>なぜアドレスバーにコードを書くと実行されるかが 例えば A タグのリンク先にスクリプトを書くと実行されますが、これには納得してますか?これと同様の原理だとおもいますが・・・ 例: <A href="javascript:alert('スクリプト実行しました。');void(0);">実行</a> 通常ホームページの URL は http: から始めますよね。この部分が URL の種類(スキーム)を表します。 ftp: mailto: file: ・・・ URLには沢山の種類があり、ブラウザはそれぞれに応じた動作をします。 http: ならホームページを開く。 ftp: ならファイルをダウンロードする。 mailto: ならメーラーを起動する。 javascript: もその内の1つで(非公式らしい)、javascript: で始まる URL は JavaScript と解釈し、それに応じた動作(スクリプトの実行)をするのです。

otaks
質問者

お礼

>例えば A タグのリンク先にスクリプトを書くと実行されますが、 >これには納得してますか?これと同様の原理だとおもいますが・・・ なるほど、納得できました。 ありがとうございました^^

その他の回答 (1)

  • venzou
  • ベストアンサー率71% (311/435)
回答No.1

おもしろいスクリプトですね。この数行のコードに画像を動かす命令が書かれています。 仕組みとしては <A href="javascript:・・・"> と同様、ブラウザがリンク先を開こうとするとき、書かれているスクリプトを処理していると思います。 スクリプトの内容を簡単に解説すると、 >javascript: JavaScriptであるという宣言 >R=0; ・・・ y5=200; 初期値の設定。 >DI=document.images; DIL=DI.length; 現在表示されている画像のリストと数を取得。 >function A(){ 画像を動かす関数の定義開始 >for(i=0; i-DIL; i++) { 全ての画像を処理するためのループ開始 >DIS=DI[ i ].style; DIS.position='absolute'; 画像のスタイルを変更 >DIS.left=Math.sin(R*x1+i*x2+x3)*x4+x5; >DIS.top=Math.cos(R*y1+i*y2+y3)*y4+y5 } 画像の位置を計算、設定。(ループの終わり) >R++} パラメータの変更(関数の終わり) >setInterval('A()',5); 先ほど定義した関数を定期的に呼び出すように設定。 >void(0); ページを変更しない為の物。

otaks
質問者

お礼

ご回答ありがとうございます。 スクリプトの内容は分かったのですが、 なぜアドレスバーにコードを書くと実行されるかが 知りたかったです><

関連するQ&A