2013-01-23 62 views
-2

你好,我在我的JQuery擴展中有一個靜態選項。選項是顏色:「藍色」作爲變量的Jquery選項

$(ele).test({color:「color」});

//我在下面試過

var anoption =「color」; $(ELE)。測試({anoption: 「藍色」});

但它沒有工作。無論如何要將其他變量序列化爲上面嘗試的選項名稱?

+0

請解釋更是你'喜歡做,你的問題幾乎不可理解和模糊:( –

回答

2

對象根本不會這樣工作。如果要設置一個對象的屬性,其中該屬性的名稱包含在變量中,則必須使用括號表示法進行該操作。例如,

var options = {}, anoption = "color"; 
options[anoption] = "blue"; 
$(ele).test(options); 
0

我相信你會希望做一個函數象下面這樣:

function changeColour(colour,ele){ 
    $(ele).css({'color':colour});//this will change the colour of the text 
} 

我們運行這個功能,你需要調用它。所以讓我們把一個函數調用到一個元素上。我們可以通過兩種方式來完成。其中一個javascript document.ready功能在它自己的元素上。

jQuery選擇功能:

$('#element').click(function(){ 
    changeColour('#FF0000',$(this)); //this will send the colour: #FF0000 being red and your element. 
} 

中的元素本身:

<div id="element" onClick="changeColour('#FF0000','#element')"> 
    <p>Content</p> 
</div> 

現在有做到這一點使用jQuery一個簡單的方法:

$('#element').click(function(){ 
    $(this).css({'color':'#FF0000'}); 
});