• ベストアンサー

windowsというクラスをダミーでJScriptで記述できないものでしょうか?

HTMLのjavascriptのファイルtest.jsを JScriptでコンパイルしたところ、 window.document..... でエラーになります。 HTMLだから正しく動いていたと思いますが、 windowsというクラスをダミーでJScriptで記述できないものでしょうか? もしくは、windowというオブジェクトが定義されていないと判定する 方法が知りたいです。 Javascript JScript VBScript WSH ... それぞれ別物でしょうか?

  • binma
  • お礼率14% (11/78)

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

  • ベストアンサー
noname#39970
noname#39970
回答No.1

オブジェクトが有るのか判定(obj=オブジェクト名) if(obj)alert("object enable"); これはobjが使えない、用意してない等の場合は null が返ってくるという仕様を利用した判定方法。

その他の回答 (1)

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

>Javascript JScript VBScript WSH ... それぞれ別物でしょうか? 簡単に説明すると JavaScriptはNetscape社がブラウザ用のスクリプト言語として開発したもの。現在はECMAScriptとして標準化され、事実上ブラウザ標準のスクリプト言語。 JScript、VBScriptは上記のNetscape社に対抗するためにマイクロソフトが採用したスクリプト言語。VBScriptはVBのサブセット版、JScriptはJavaScriptの真似。 JScript、VBScriptはブラウザのスクリプト言語としての競争には敗れる。対応しているブラウザは少ない。その後、ASPやWSHなど、用途を拡大しつつ現在に至る。 WSHは上記のスクリプトをWindows上で実行するための物。例えば、VBScriptのファイル(拡張子vbs)をダブルクリックで実行した場合、実際にはWSHが起動し、WSHがスクリプトを実行している。(見た目にはWindowsが直接スクリプトを実行しているように見えるが・・・)

関連するQ&A

  • Windows上でJavascriptを使用したい

    JavascriptはWeb上で動くものですが、これをWindows上で実現させたいのです。WSHで可能かと思ったのですが、JScriptかVBScriptしかだめみたいです。JavascriptとJScriptとでは互換性があるらしいのですが、どのようにすればいいのかわかりません。 ・JavascriptをJScriptかVBScriptに変換する ・JavascriptのコードをJScriptかVBScriptのコードに簡単に変える ・JScriptかVBScriptからJavascriptを実行させる のいずれかが可能でしょうか?可能であるならばどのようにしたらよろしいのでしょうか? 可能なのかどうかさえわかっていない初心者ですが、皆様、よろしくお願いいたします。

  • MediaPlayerコントロールのイベントハンドラをJScriptで

    JavaScriptの範疇でよいのか微妙な問題ですが MicrosoftのWindows Media Player OLE/ActiveXコントロール をJScript & IE で使用しています。 IDLにて定義されている dipsinterface _MediaPlayerEvents の PlayStateChange にハンドラを登録したいのですが,できません。 回答だけでなく,JScriptでは無理。VBScriptなら…等の情報でもありがたいです。 よろしくお願いします。 以下は,そのMedia Playerコントロールを使用したHTMLのコードです。

  • JscriptでsetTimeout

    JscriptでIEを操作してあるページのリンクをクリックしたいです。 リンクにjavascriptが入っているため同期処理でクリックすると、 その先に進みません。 そのため非同期処理でクリックしたく、setTimeoutを使って 関数を作りましたが動きません。 setTimeout('function ck(ie,ID){ ie.document.querySelector(ID).click();}',10); ※ieはIEオブジェクト、iDはリンクのID属性です。 ちなみに上記をVBAから呼び出して動かしています。 setTimeoutをはずせば普通に動きました。 setTimeoutはwindowオブジェクトが必要なので、 それを省略しているのが悪いとも考えましたが、 VBAでどうやってIEのwindowオブジェクトを作るのかが分かりません。 setTimeout以外にも非同期実行できる方法があれば それでも構いません。 どうかご教授お願いいたします。

  • HTML内記述と外部jsファイルの違い

    JavaScript初心者です。 HTML中のとあるボタンを押したとき、二つのラジオボタン(radio1)の選択を変える処理をJavaScriptで試みています。 ■HTMLのフォーム記述(抜粋) <INPUT type="button" name="radio1" value="変更" onClick="setRadio1()"> ■同一HTML内に記述したJavaScript function setRadio1() { <!-- document.mainform.radio1[0].checked = true; //--> }</script> ↑これは問題なく動作する。 ■外部jsファイルに記述したJavaScript function setRadio1() { document.mainform.radio1[0].checked = true; } ↑ページエラーとなる。 なぜか外部jsファイルのJavaScriptに切り替えると「ページエラー」になってしまいます。 どの辺りが問題なのか見当がつきません。 何か気づきがありましたら、アドバイスをお願いします。 ※ちなみに外部jsファイルに記述してある他のJavaScriptは問題なく動作します。

  • JAvaScriptの外部ファイルの記述について

    HTML内にJavaScriptの処理書くのが嫌で、外部ファイルにしてJavaScriptを読み込むようにしたのですが、このファイルに、実行したい処理を複数書いてしまうとHTMLで正しく処理されなくなるのは何故ですか?.jsファイルには処理は1つしか記述できないのでしょうか?CSSファイルみたいに1つのファイルに何個も処理を記述してHTMLに反映させるようにしたいのですが・・・。どなたにも質問できず困っています。どなたか教えて下さい。jsファイルには処理は1つしか記述できないものなのかどうか回答お願い申し上げます。

  • VBScriptでのforms[0]など配列で取得できますか?

    下記のJavaScriptの配列のようにオブジェクトを取得したいと 思っていますが、VBScriptでは、無理なのでしょうか?? window.document.forms[0].elements[0].value VBScriptは不慣れで困っています。 HPでの検索でもなかなかVBScriptの良いリファレンスを見つける 事ができずにいます。もしお勧めがありましたら併せて教えてください。

  • JScriptでExcelの全シートにアクセスする方法

    JScriptからWSHを使って、Excelファイル内の全ワークシートにアクセスしようと試みています。たとえば、 var excel=WScript.CreateObject("Excel.Application"); excel.Visible=false; book=excel.Application.Workbooks.Open(ファイル名); for(var sheet in book.Sheets) { WScript.Echo(sheet.Name); } と書いてみましたが、forループに入りません。 VBScriptでは上記のようなコードでOKらしいのですが、JScriptではNGなのでしょうか? また、Office製品のActiveXオブジェクト(というのかどうかよくわからないのですが)を詳しく紹介しているサイトや書籍などをご存知でしたら教えてください。 MicrosoftのサイトにはTIPS程度しか載っていないので、独習できない状況です。

  • IFの記述方法。

    違うフレームページからメッセージ(下の方に記述)を反映させメッセージの最後でsetTimeを使って最後のメッセージを読み込んだときに数秒をおいてスペースのメッセージを上書きして視覚的にメッセージを消したいんですが何か良い方法はありますでしょうか? 動けば丸っきりプログラムが変わってもいいんですが。。 また、初心者なもので質問の仕方が下手です。すみません^^; ------外部JSファイル----- var win1; function openwin(){ win1 =window.parent.low1; } function loading_mes(message){ win1.focus(); win1.document.open("text/html"); win1.document.write("<HTML><BODY>"); win1.document.write("<H3>" + message + "</H3>"); win1.document.write("</BODY></HTML>"); win1.document.close(); } ------------------------------------ --読み込むページに下記のようなメッセージの違うものを数個HTMLに貼り付ける-- <script type="text/javascript"> loading_mes("■□□□"); </script> ----------------------------------------- -----最後のメッセージを読み込んだ後に実行させたいこと。---- function test(){ loading_mes(" "); } setTimeout("test()",1000); ←できれば、これとtest()を外部に入れたい。 ------------------------------------------

  • javascriptとJavaAppletの連携について

    javascriptとJavaAppletの連携について質問です。 あるHTMLに組み込んだJavaAppletの関数を同HTMLに組み込んだ外部javascriptファイルから実行したいのですが、このような事は可能でしょうか? HTMLに直接javascriptを記述した場合は document.Applet名.関数() とすると普通に呼び出せるのですが、外部jsファイルからこれと同様行おうとした時、どうもこのjsファイルからAppletが見えてないような気がします。実際、document.applets.lengthでNullと確認出来ます。 Javaであればオブジェクト参照の受け渡しなどで解決出来るでしょうが、javascriptではこれと同様の事が出来るのでしょうか? あるいは、この場合そのような事は必要なのでしょうか? なお、この外部スクリプトは同HTMLとは別階層にある100程度のファイル群です。 Javaの経験はある程度あるのですが、javascriptは普段あまり利用しないので、ひょっとしたら初歩的な事を勘違いしているのかもしれません。 どうかご教示よろしくお願いします。

    • ベストアンサー
    • Java
  • javascript aタグ内の記述について

    javascriptのaタグ内の記述について質問です。 まず、gallery.htmlというページ内で、下記のような記述をして表示の切り替えを実装しています。 ■HTML内 <a href="javascript:SwitchTopic(01);">画像一覧</a> ■js内 function SwitchTopic(num) { var num; if(num == 01){ document.getElementById("topic01").style.display = 'block'; //これだけ表示 document.getElementById("topic02").style.display = 'none'; } } これを、他のページからgallery.htmlへリンクを飛ばしたときに SwitchTopicで表示を切り替えた部分に飛ばしたいのですが <a href="../../gallery.html">  ↑このaタグ内で一緒に javascript:SwitchTopic(01)の実装ができるものでしょうか? gallery.htmlに飛ばすことはできても、切り替えた部分に飛ばすことができず行き詰っております… あまりjavascriptの知識がないため、記述の仕方をご教授いただければ助かります。 よろしくお願いいたします。

専門家に質問してみよう