次の関数では、idが最初の引数として渡されます。
jQuery $(id)は、括弧や#がないので私を混乱させています。
$(id)とは何ですか? また、この短い関数の代わりにJavaScriptに相当するネイティブJavaScriptは何ですか?
function swapColor(id, color) {
$(id).css("background-color", color);
}
次の関数では、idが最初の引数として渡されます。
jQuery $(id)は、括弧や#がないので私を混乱させています。
$(id)とは何ですか? また、この短い関数の代わりにJavaScriptに相当するネイティブJavaScriptは何ですか?
function swapColor(id, color) {
$(id).css("background-color", color);
}
を連結番号:
function swapColor(id, color) {
$("#"+id).css("background-color", color);
}
id
swapColor
関数に渡される引数です。それはstring
でなければならず、この特定のケースではセレクタマーカー - hash sign
#
を正しく含んでいなければなりません。
function swapColor(id, color) {
$(id).css("background-color", color);
}
swapColor('#box', 'blue')
#box {
height: 100px;
width: 100px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id='box'></div>
あなたは色をターゲットと変更することを、多くの地域で同じ機能を再利用し、動的要素のid
を渡すことができます。そのような
swapColor("#btn", "#cececece");
一方、のような、他の方法は、特定のタイプ(またはID、またはクラス名)に機能をハードワイヤし、そのタイプが変更されたことです。その、機能自体は、その特定にだけ仕事に配線接続されるだろうどちらか
もう一つ、あなたはこのようにそれがいずれかで関数を実行することができますよう、ダイナミックIDは、多くの点で有用であろうことができ、イベントハンドラ—クリックハンドラ、またはイベントハンドラを書いていません要素。あなたにも、選択したクラスを渡すと
あなたは...
真を選択する#
を付加する必要がありますが、見て、あなたのコードは動作します。このように、あなたは次のように関数宣言を変更しても、それはまだ
function swapColor(elementSelector, color) {
$(elementSelector).css("background-color", color);
}
/* Valid use cases
* 1. #btn
* 2. .btn
* 3. button
*/
、
function swapColor(color) {
$("#myElement").css("background-color", color);
}
私は願って、働くだろう基本的な地下の概念を明らかにする。
これはネイティブのJavaScriptで(ほぼ)同等です。ここではIDSに限られています。
あなたは、セレクタを使用する必要がfunction swapColor(id, color) {
document.getElementById(id).style.backgroundColor = color;
}
とほぼ同じです。 OPの機能は実際にはIDに限定されません。 – Mikey
(ID(#)、クラス()、タグ。)か、要素自体を渡すことができます。
let element = document.getElementById('element');
$(element).css('background-color', 'tomato');
それはちょうど、他のパラメータと同様に、パラメータです。 – SLaks
さまざまな答えは 'id'はid属性値であると仮定し、#を前置するとCSSセレクタになります。 '$()'の中で何が使えるのか知るには、http://api.jquery.com/jquery/ – yezzz