1

問題は、HTML タグの id を毎回書いたときに、以下のコードが機能することです。しかし、それらをキャッシュすると、キャッシュされません。私は何が欠けていますか?

これが私のコードです:

var NewFormContainer=$("#NewUserFormContainer"), opener=$("#nufcOpen"), closer=$("#nufcClose"), NewForm=$("#NewUserForm");
$(function() {
    $( "#userType" ).buttonset();
    $(".btn").button();

    closer.button({
        icons: {
            primary: "ui-icon-closethick"
        }, text: false
    }).click(function(){
        NewFormContainer.slideUp("slow");
    });
    opener.click(function(){
        NewFormContainer.slideDown("slow");
    });
});

ところで、コンソールにエラーはありません。そして、私もjQ-UIを使用しています

4

2 に答える 2

2

cacheの準備ができたら、それらを使用する必要がありdomます。

$(function() {
    $( "#userType" ).buttonset();
    $(".btn").button();

    var NewFormContainer=$("#NewUserFormContainer"),
        opener=$("#nufcOpen"),
        closer=$("#nufcClose"),
        NewForm=$("#NewUserForm");

    closer.button({
      icons: {
        primary: "ui-icon-closethick"
      }, text: false
    }).click(function(){
        NewFormContainer.slideUp("slow");
    });

    opener.click(function(){
        NewFormContainer.slideDown("slow");
    });
});
于 2012-09-04T17:03:26.197 に答える
1

それらをキャッシュすると、document.ready の前に評価されます。これを試して:

var NewFormContainer="#NewUserFormContainer", opener="#nufcOpen", closer="#nufcClose", NewForm="#NewUserForm";
$(function() {
  opener = $(opener);
  closer = $(closer);
  NewFormContainer = $(NewFormContainer);
  NewForm = $(NewForm);
  ...
于 2012-09-04T17:03:38.940 に答える