0

クリックすると変数が JavaScript 関数に送信されるフォームにボタンがあります。変数が「リンク」に等しい場合、makeLink() という jquery 関数を呼び出したいと思います。

これは私が持っているものです:

function getText(change)
{
   if(change == "link")
   {
      //call jquery function called makeLink()

   }

}

そして、フォームでモーダルポップアップを作成するjquery関数は次のとおりです。

$(document).ready(function(){

function makeLink() {
    if ($("#makeALinkModalPopup").is(":hidden")){
    $("#makeALinkModalPopup").fadeIn("slow");

     $("#backgroundPopup").css({  
        "height": document.documentElement.offsetHeight

      });

    $("#backgroundPopup").css({"opacity": "0.7"});
    $("#backgroundPopup").fadeIn("slow"); 

        }

    }


});

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

4

4 に答える 4

2

document.ready ラッピングを削除して、残りのページで makeLink を使用できるようにします。

    function getText(change){
      if(change == "link") {
      //call jquery function 

        makeLink()

      }
    }


    function makeLink() {
      if ($("#makeALinkModalPopup").is(":hidden")){
        $("#makeALinkModalPopup").fadeIn("slow");

        $("#backgroundPopup").css({  
          "height": document.documentElement.offsetHeight

        });

        $("#backgroundPopup").css({"opacity": "0.7"});
        $("#backgroundPopup").fadeIn("slow"); 

      }
    }
于 2012-08-02T21:10:45.790 に答える
1

makeLink をグローバル スコープに移動し、通常どおり呼び出します。JavaScript関数のみがあります。あなたが見ている違いはスコープのみです。

範囲についてはこちらをご覧ください。

他の誰かが言ったように、document.ready ラッピングを削除します。関数は document.ready の外では見ることができないため、そこで定義する必要はありません。

于 2012-08-02T21:10:07.630 に答える
0

ドキュメント準備完了イベント内ではなく、別のファイルで関数を定義する必要があります。

次に、あなたが持っている場所:

//call jquery function called makeLink()

置くだけ

makeLink()
于 2012-08-02T21:09:55.990 に答える
0

ドムの準備は必要ありません。

ただ持っている

function makeLink() {
    if ($("#makeALinkModalPopup").is(":hidden")){
    $("#makeALinkModalPopup").fadeIn("slow");

     $("#backgroundPopup").css({  
        "height": document.documentElement.offsetHeight

      });

    $("#backgroundPopup").css({"opacity": "0.7"});
    $("#backgroundPopup").fadeIn("slow"); 

        }

    }

ただ持っている

function getText(change)
{
   if(change == "link")
   {
      makeLink();

   }

}

DOM Ready で関数を使用したい場合は、実行する必要があります。

$(document).ready(makeLink);< 構文が間違っているかもしれませんが、安全のために、これが機能することを知っています..

$(document.ready(function(){
// do what ever you want
//even call make link

makeLink();
}
于 2012-08-02T21:12:09.370 に答える