2

Google サイト内で新しい HTML ボックス ガジェットを利用しようとしています。<select>サイト内の他のページに移動するためのシンプルなメニューとしてボックスを利用したいと考えています。

Google ( http://support.google.com/sites/bin/answer.py?hl=en&answer=2500646 )が提供する詳細と例によると、これは達成可能でサポートされているはずです。ただし、ページがレンダリングされると、Javascript がなくなり、何も機能しません。Firebug は JS の問題を報告していません。

HTML ボックスは正常に解析され、ガジェット エディタからのエラーや警告はありません。

使用しているコード:

<style>
  select { font-family: Arial; width: 100px; }
  input { font-family: Arial; }
</style>

<form id="menu-form1" action="">
 <select id="jm1" class="jumpmenu">
     <option value="http://google.com/">Google</option>
     <option value="http://yahoo.com/">Yahoo!</option>
     <option value="http://ask.com/">Ask.com</option>
 </select>
 <input type="button" class="jumpbutton" value="GO" />
</form>

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6/jquery.js"> </script>
<script>
var menuChange = function() {
    var selectBox = $('.jumpmenu');
    alert(selectBox.val());
    window.top.location.href = selectBox.val();
}

$('.jumpmenu').change(menuChange.bind(null));
$('.jumpbutton').click(menuChange.bind(null));

</script>

JavaScript の観点から「違法」なことをしている場合を除きますが、これが Google のサポートされていない機能に反するとは思いません。

  • iframe
  • JavaScript コードは、スクリプト、画像、またはリンク タグを作成できません
  • ドキュメント/ウィンドウの onload および onready 関数。ドキュメントのロード後にロードする必要があるコードの最後に任意の JavaScript を配置できます。

誰かが同様の作業を行っており、Google サイトが JavaScript を削除する原因となるものを見ることができますか?

ご協力いただきありがとうございます。

4

2 に答える 2

1

使用しているjQueryのバージョンが重要です。バージョン1.7.2を使用してみてください。あなたのバージョン(1.6)を私の例にロードしましたが、動作しなくなりました。1.7.2の使用はうまくいったようです。

これを試して:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.js"> </script>

これをもう一度読んでみました-選択した後、ボタンが実際のURLを起動しない理由を尋ねていますか?

于 2012-10-03T23:52:13.580 に答える