- ベストアンサー
検索ボタンをFLASHに変える方法
- 検索などのボタンをFLASHに変える方法はありますか?
- jpegやgifなどの画像ではなく、swfファイルで検索ボタンを置き換えることは可能でしょうか?
- nameの値を変えることによってFLASHファイルで検索ボタンを実装できるのでしょうか?
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
HTMLのBODYに記述------------------------------------- <script language = "javascript"> <!-- function Search(){ var word = frmMain.txtSch.value; //テキストの値取得 //検索用のURL(ここでは長いから一部略) var url = "http://www.google.co.jp/search?hl=ja&q="; var address = url + word; location.href = address; } //--> </script> <form name="frmMain"> <input type="text" name="txtSch" value="Flash"> <!-- (略)ここにオブジェクトタグでFlashを貼る --> </form> Flashに記述------------------------------------------ //Flashのボタンを押したときjavascriptを呼ぶ _root.onMouseDown = function() { this.getURL("javascript:Search();"); }; でできます。 今回の場合URLエンコードはしてませんので 検索は半角英数字のみです。 参考URLは「URLエンコードのしかた」
その他の回答 (4)
- perse
- ベストアンサー率74% (113/152)
検索ボタンとして使いたいとのことですが、 <object>タグで普通にFlashを貼るのではだめなのですか? Flashを使用しない場合のその「検索ボタン」のクリック時に どのような処理をするのかはわかりませんが、 javascriptを呼ぶことでその処理を代用できるのであれば、 問題ないと思います。 javascriptを呼べばsubmitボタンの代わりとしても使えますし。
#1&2 です。 > <form>タグで作りたいボタンのイメージを > 変えたいだけなのですが、 HTMLですか。それは無理です。#2で回答したようにしないと。 だいたい,普通のリンクすら無理でしょう。 HTMLにレイヤーを使用して,Flashの上に透明GIFを配置し,Flashを貼り付けるタグを背景透明にして,そのGIFにリンクを貼るくらいがせいぜいできることです。 参考URL http://oshiete1.goo.ne.jp/kotaeru.php3?q=1585290 ↑教えて!goo ↓OKWave (同じです) http://okwave.jp/kotaeru.php3?q=1585290 HTMLにレイヤーは使用したことがないというか,実験レベルでしかしたことがないので,ちゃんと出来る方法は説明できません。
#1です。 #1では説明不足であると思ったので,勝手に作った具体例で補足回答します。 例えば,Google で検索するFlashのボタンの例です。 まず, http://www.google.co.jp/ にアクセスします。 そこで "教えて" を検索します↓。 http://www.google.co.jp/search?hl=ja&q=%E6%95%99%E3%81%88%E3%81%A6&btnG=Google+%E6%A4%9C%E7%B4%A2&lr= 不要な部分がたくさん含まれています。 それを削除します。するとこうなります↓。 http://www.google.co.jp/search?hl=ja&q=%E6%95%99%E3%81%88%E3%81%A6 これは http://www.google.co.jp/search?hl=ja&q= の部分と %E6%95%99%E3%81%88%E3%81%A6 の部分に分けられます。 前半は定数として,後半は変数として getURL で Google に送信すれば良いと言うことです。 それで例えばステージに,テキスト入力のテキストフィールドを用意して, そのテキストフィールドに kensaku という変数名を付けておきます。 テキストフィールドのフォントは デバイスフォント(_等幅,_ゴシック など,前にアンダーバーの付いたフォント)を選ぶ方が良いです。 それで,適当なボタンを作ってそこに, ----------------------------------- on (release) { getURL("http://www.google.co.jp/search?hl=ja&q=" + kensaku, "_blank"); } ----------------------------------- と書いてパブリッシュ。 パブリッシュされたHTMLを開いて,テキストフィールドに 教えて と入力し, ボタンをクリックしてみてください。 (Flash 8 からは, 「コンテンツ作成者のためのグローバルセキュリティ設定」 のURLが表示されるかもしれませんが,適当にPCのフォルダ単位とかで許可を追加してください。) すると Google が開いて,そのURL欄が http://www.google.co.jp/search?hl=ja&q=教えて となるはずです。これで取りあえずは成功です。 そのまま使える場合も多々あります。 しかし,日本語など2バイト文字はURLエンコードしておくほうが良いので, ボタンのスクリプトを以下のように書きかえます。 ---------------------------- on (release) { kensaku2 = escape(kensaku) getURL("http://www.google.co.jp/search?hl=ja&q=" +kensaku2, "_blank"); } ---------------------------- そしてパブリッシュ。 パブリッシュされたHTMLを開いて,テキストフィールドに 教えて と入力し, ボタンをクリックしてみてください。 http://www.google.co.jp/search?hl=ja&q=%E6%95%99%E3%81%88%E3%81%A6 に行けるはずです。 いったいどんなことをしようとされているのかがわからないので, 勝手に作った具体例ですが, 検索エンジンの検索窓をFlashで作る場合はこんなような段階を経て作成します。 その他,サーバに変数を渡す場合は,いろいろパターンがあるので,1つ1つはわかりません。 特に 教えて!goo の場合は,検索エンジンのように GET で変数のやりとりをしないので,さっぱりわかりません。 逆にわかったとしても不正アクセスに該当する可能性があります。
補足
うーん、これもちょっと意図と違うのですが、 通常、<form><input name="submit"...></form> で、グレーのボタンが生成されるのは当然御存知ですよね。(Googleの検索ボタンも同じです) ただそれではつまらないので、 <form>... <input type=hidden name='submit' ...> <input type="image" src="imageファイル"...>として 好きなイメージファイルに検索ボタンを置き換えられるのは御存知ですよね? そこにFLASHを使いたいのです。 FLASHのボタンシンボルに、mousedownやreleaseなどで というより、getURLで飛び先を指定できるのは知っていますが、そういうことでは無いのです。 変数を渡す方法は聞いていません。 GETの危険性、GETとPOSTの違いなど全て理解しています。
どういう場合のことをおっしゃっているのかよくわかりませんが… 教えて!goo(OKWaveも同じ)ログインしないと回答できませんよ。 ログインするときに,IDやパスワードを入力してそれらを何かと引き換えて変数にして,それをPOSTでPHPに送信しています。 それら色々な条件がそろわないと,少なくとも「質問する」はできませんよ。 質問できたら,大変でしょう。 あと「中止する」も色々な条件によって結果が変わります。 実験するのなら,検索エンジンのgoo とか Google とか Yahoo とか, または,自分の掲示板とか,そんなので実験しないとうまくできません。 また,検索エンジンの場合は,GET で送信される内容に置いて何が不要で,何が必要なのかをちゃんと解析して,みてください。 URLエンコードされている部分は,実は日本語でそのまま送信しても大丈夫な場合がほとんどです(最も自分の環境でですが)。
補足
質問の意図とは全く違うのですが... <form>タグで作りたいボタンのイメージを変えたいだけなのですが、 何をPOSTするとかそういったこと云々の話ではありませんし、それは指摘されずとも理解していることです。
補足
御回答ありがとうございます。 javascriptの方に明るくないもので、できればサンプル的な具体例を教えていただけないでしょうか。 よろしくお願い致します。