2011-04-22 10 views
0

だから私は(ドキュメント).ready関数の内部でこれらの機能を持っている:私は次のようになりパラメータで関数を書くことができるようにしたいヘルプ

$(document).ready(function() { 
    $("#border_button").click(function() { 
     var value = $("#border-radius").attr("value"); 
     $("div.editable").click(function (e) { 
      e.stopPropagation(); 
      showUser(value, '2', this.id) 
      $(this).css({ 
       "-webkit-border-radius": value 
      }); 
     }); 
    }); 
}); 

(#border_button,#border_radius,2,-webkit-border-radius) 

は、しかし、私はfunctionNameを(パラメータ)関数を記述し、それを実行するたびに、私はエラー「未定義」を得る

誰もがこのための関数を書く方法を知っていワットという定義されていない戻りませんか?

答えて

0

多分このような何か?なぜあなたがそれをしたいのか分かりません。

$(document).ready(function(){ 

    function Fos(buttonSel, inputSel, someValue, cssProperty) { 
     $(buttonSel).click(function(){ 
      var value = $(inputSel).attr("value"); 
      $("div.editable").click(function (e) { 

       e.stopPropagation(); 

       showUser(value, someValue, this.id) 
       var css_obj={}; 
       css_obj[cssProperty]=value; 
       $(this).css(css_obj); 
      });   
     });   
    } 

    Fos('#border_button', '#border-radius', 2, '-webkit-border-radius'); 
});   
+0

はい、正確です。あなたの良い。私は吸う。しかたがない! –

1

どこでも手動で呼び出し可能な関数を作成しているわけではありません。

あなたは完全に異なる機能について話している場合:あなたはすなわち'または"で引用符で囲まれた文字列として、あなたの引数を渡す必要があります。

someFunction('#border_button', '#border_radius', 2, '-webkit-border-radius'); 

関数として、あなたの現在のコードを呼び出し可能にするには:私はそのよう.val().attr('value')を変更した

function fooBar(selector, fieldSelector, num, cssRule) { 
    $(selector).click(function(e) { 
     var value = $(fieldSelector).val(); 
     $('div.editable').click(function(e) { 
      e.stopPropagation(); 
      showUser(value, num, this.id) 
      $(this).css(cssRule, value); 
     }); 
    }); 
} 

$(document).ready(function() { 
    fooBar('#border_button', '#border_radius', 2, '-webkit-border-radius'); 
}); 

注VALUを取得するjQueryの方法ですフォームフィールドのe。

+0

はい私は、パラメータ内で関数を使用していることを暗示するつもりはないことを知っています。私の悪い –

+0

+1ああ、単純な.css()方法: – kapa

+0

ええ、あなたは動的キーでオブジェクトリテラルを作成することはできません。オブジェクトの引数では、 'var css = {};のようなものが必要でした。 css [cssRule] =値; $(this).css(css); 'これはかなり醜いでしょう。 – ThiefMaster