プロが教える店舗&オフィスのセキュリティ対策術

HPにメールフォームのリンクを貼り、そのフォームをJavaを使用して小窓表示になるように設定しました。

その後色んなPCで動作確認した所、セキュリティ設定の問題なのかもしれませんがリンクをクリックすると小窓が出る前に、ツールバーの下に注意表示が出ます。「ポップアップブロック…」「アクティブX…」等メッセージはいろいろです。
自分で見る際は、「許可する」でその後出ないように出来たですが、できればどのような環境でもそのような表示を出すことなくクリックすれば単純に小窓が開くようにしたいです。
そういった設定はどうすればよいのでしょうか。
ちなみにhead内に以下のようなタグをいれています。

<script language="Javascript">
<!--
function newwin(){
var win1=window.open('http://○○○.html','newwindow',
'resizable=yes,toolbar=yes,location=no,status=no,menubar=no,scrollbars=yes,width=450,height=450');
}
//-->
</script>


宜しくお願い致します。

A 回答 (6件)

まず、JavaとJavaScriptは全くの別物です。


Javaでは略語になりません。JavaScriptをあえて略するならばJSです。

> 「ポップアップブロック…」
クリックせずにウインドウを開こうとした場合やポップアップウインドウを無条件的に禁止しているとブロックされます。
ブラウザ側の設定によるブロックをWebページ側から回避することは不可能ですのでこれは仕方ないです。

> 「アクティブX…」
あなたのパソコンの中にあるファイルがJavaScriptを実行しようとしたときにIEがブロックをするようになっています。
JavaScriptはWebページに動きのあるコンテンツを埋め込むことが可能な反面、下手に実行を許可するとトラブルになるケースが想定されます。
まぁ、JavaScriptコードでパソが火を吹くなんてめったなことでは起こりませんけどね^^;

私は脆弱性とやらのクリーンヒットで1度だけ壊れましたが、先にも後にもそれだけだし他の人が似たような事例に遭遇した話も聞かないです。
…って横道にそれちゃってますがまぁ、アップしちゃえばそんなメッセージは絶対に出てきません。
アップしてもそういうメッセージが出るって思い込む方が多いんですけどアップしてからこのメッセージは出ません^^;
万が一情報バーが出るとしてもそこにあるのは全く別のメッセージ。

> できればどのような環境でもそのような表示を出すことなくクリックすれば単純に小窓が開くようにしたいです。
100%は無理ですが、<input type="button" onclick="newwin()" value="ウインドウを開く!">みたいにすれば比較的高確率でブロックを回避できますよ^^
    • good
    • 0

<iframe style="display:none;position:absolute" src="./form.html"></iframe>


<span id="ff">フォームの表示</span>
<script>
window.onload=function(){
document.getElementsByTagName('iframe')[0].style.left=document.documentElement.clientWidth-(document.getElementsByTagName('iframe')[0].offsetWidth/2) + "px"
document.getElementsByTagName('iframe')[0].style.top=document.documentElement.clientHeight-(document.getElementsByTagName('iframe')[0].offsetHeight/2) + "px"

document.getElementById('ff').onclick=function(){
document.getElementsByTagName('iframe')[0].style.display = "block"
}
}
</script>
ウインドウは開きませんが、これならポップアップブロックは誤魔化せるかな?
    • good
    • 0

個々のセキュリティ設定に依存するかと思うので、無い物ねだりしても仕方ないのでは?ポップアップ小窓っていうのは、嫌がられる効果である事は知っておくべき。


「閲覧者が選択出来る」状態を残さないというのは、はっきり言って問題のある作り方になると思いますよ。
javascript切った状態ではリンク自体動作しないし(セキュリティの観点から、javascriptを無効にする設定にしている方もいる)ので、このスクリプトを使っていてセキュリティレベル云々を仰られるのは、意味が無いような気がしますが・・・・。
    • good
    • 0

ついでにもう1つ補足・・・


window.open('http://○○○.html','newwindow',
のところhttp://がついていたらサーバーエラー・ページが表示できませんと出ました(--;)
外してください(滝汗)
    • good
    • 0

すみませんm(--)m ↓の方法じゃ無理でした


(確かめてから書けばよかったです(--;))
<a href="***.html" onClick="newwin()">
では小窓が開かないので親ウィンドウのURLも変えるのであれば
<script language="Javascript">
<!--
function newwin(){
window.open('http://○○○.html','newwindow',
'resizable=yes,toolbar=yes,location=no,status=no,menubar=no,scrollbars=yes,width=450,height=450');
location.href="***.html" ←ここ追加
}
//-->
</script>

<input type="button" value="小窓" onClick="newwin()">
で小窓も開いて親ウィンドウもページチェンジできました(滝汗)
    • good
    • 0
この回答へのお礼

早速のご回答、ありがとうございます。
やってみます!

お礼日時:2007/01/09 14:21

僕もJavaは勉強中なので確かなこと言えないですけど・・・


<body>タグでonLoadかonUnloadでウィンドウ開いてます?
onClickでopenWindowにする方法はダメですかね?
<script language="Javascript">
<!--
function newwin(){
window.open('http://○○○.html','newwindow',
'resizable=yes,toolbar=yes,location=no,status=no,menubar=no,scrollbars=yes,width=450,height=450');
}
//-->
</script>

フォームメールのところに
<a onClick="newwin()">小窓が開きます</a>
のようにしてクリックしたら小窓が開くみたいな・・・
まだ勉強中なので<a>のところを<input type="button">にしたりしないと機能しないかもしれないのですけど(--;)
なまかじりなのに変に答えてすみません(汗)
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!