1

フィードバックフォームdivを開くトリガーとなるjQueryクリック機能がページにあります。基本的に、クリックせずにこのイベントをトリガーするURLを指定したいと思います。foo.com?formopenなど

これは可能ですか?URLを介してデータを渡す必要があると思っていますが、その方法がわかりません。

4

2 に答える 2

9

次のようなURLでハッシュを使用します。

foo.com#formopen

次に、ロード時に次のようなハッシュを見つけます。

$(function(){

   if (window.location.hash){
      var hash = window.location.hash.substring(1);
      if (hash == "formopen"){
         openFeedbackForm();
      }
   }

});

デモ:

コード: http: //jsfiddle.net/J5cxc/

ハッシュなしのデモ:http://fiddle.jshell.net/J5cxc/show(アラートなし)

ハッシュ付きデモ:http://fiddle.jshell.net/J5cxc/show/#foobar(アラート呼び出し)

于 2012-11-21T12:07:39.357 に答える
0

これを行うには多くの方法があります。

方法1-クエリ文字列パラメータの使用

URLで、フォームを開く必要があることを示すクエリ文字列値を渡します。

だからあなたのURLは

www.foo.com?feedback=true

次に、JSで次のことができます。

var params = {};
var ps = window.location.search.split(/\?|&/);
for (var i = 0; i < ps.length; i++) {
    if (ps[i]) {
        var p = ps[i].split(/=/);
        params[p[0]] = p[1];
    }
}
if(params.feedback){
     $(".feedback-div").show();
}

方法2-URLでハッシュタグを使用する

URLは次のようになります。

www.foo.com#feedback

あなたのJSで:

if(window.location.href.indexOf("#feedback") > -1) {
     $(".feedback-div").show();
}
于 2012-11-21T12:06:24.447 に答える