人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

以下のようなコードを書いているのですが、このファイルでJavaScriptのtest()を実行したいです。
このファイルをブラウザにドラッグドロップ(ローカルにあるファイルを表示しているだけ)しても実行出来なかったのですが、サーバにおいてhttpで取ってこないと実行されないでしょうか?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>JavaScript Test</title>
<script type="text/javascript">
function test(){
alert("hoge");
}
</script>
</head>
<body>
<a href="javascript:test()">hoge</a>
</body>
</html>


●質問者: koime_ryokutya
●カテゴリ:コンピュータ インターネット
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● うぃんど

function は関数宣言しているだけなので、
せっかく作っても、それを呼び出すものが無ければ機能はしませんよ

functionを呼び出す例

<body onload="javascript:test()">


ぜったいに1回は動かすという場合は
下記のようにしてしまう方法もあります

<script type="text/javascript">
alert("hoge");
</script>

うぃんどさんのコメント
「ドラッグドロップ(ローカルにあるファイルを表示しているだけ)しても実行出来なかった」に反応してしまったのだけど、 「ドラッグ&ドロップしてリンクをクリックしても実行できなかった」ということであれば、 a-kuma3さんの回答にあるロックダウン(詳しくは下記)が原因の可能性が高そうですね ローカル コンピュータ ゾーンのロックダウン http://technet.microsoft.com/ja-jp/library/cc782928(WS.10).aspx 自前でサーバー立てるのも経験としていいとは思いますし、 同じく経験ということで別のブラウザを使うという手もあると思います (ブラウザによってスクリプトの挙動にも違いは出ますので・・・)

2 ● a-kuma3

hoge のリンクをつついても、alert() が実行できなかった、ということですよね?

IE を使ってませんか?
デフォルトのセキュリティの設定だと、ローカルにあるファイルのスクリプトは
実行できないようにブロックされているはずです。

セキュリティの設定を緩めるのは、何かと恐いので、ローカルに Apache を立ててしまい、
そこを経由して動作確認する、というのではどうでしょうか?
インストールのやり方を説明したページは、星の数ほどあると思いますが、そのうちの一つを以下に。
Apacheインストール - Apache入門

関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ