2015-04-29 33 views
-1
function test() { 
//allows code here 
$("#h1").css("background-color", "yellow").replace("px", "") * 2; 
//denys all code here 
} 

下面是什麼我嘗試archieve:如何在使用jquery更改按鈕的css後不能添加代碼?

function test() { 
$("#h1").css("background-color", "yellow").replace("px", "") * 2; 
$("#h2").css("background-color", "black").replace("px", "") * 2; 
} 

任何幫助或瞭解如何應對這種輸入的高度讚賞,謝謝!

編輯:得到了一些幫助,從這裏Border-left-width returns NaN in jQuery創建我的代碼

+1

你想實現什麼? – Satpal

+0

代碼在同一函數內第一個jQuery css更改後運行 – mattias

+0

您正在調用$(「h1」)上的替換。 jQuery關於鏈接。您的代碼包含錯誤。 你想要乘以2是什麼屬性? – Vennik

回答

1

變化

$("#h1").css("background-color", "yellow").replace("px", "") * 2; 
    $("#h2").css("background-color", "black").replace("px", "") * 2; 

$("#h1").css("background-color", "yellow"); 
$("#h2").css("background-color", "black"); 

您正在使用的CSS已經更換背景顏色( 「背景顏色」, 「黃」)。除非有一些具體的原因,你正在做替換和繁殖(它甚至不會使用「背景顏色」,「黃色」),只要將其刪除即可。

+0

謝謝,我早就這樣,但有一個問題,因爲某些原因變成== NaN的按鈕文本,使我困惑,總之現在工作,歡呼 – mattias

+1

@mattias它是南因爲.replace(「px」,「」)* 2;與你所要做的事情和錯誤是完全不相關的。如果你真的想深入研究--NN指的是* 2,它試圖乘以功能的前一部分,這是......呃...不是數字:P。 – ajmajmajma

1

讓我解釋一下幾件事情:

1 - 當您執行此代碼:$("#h1").css("background-color", "yellow")它會返回一個陣列狀或jQuery的DOM對象

2 - 您不能將字符串"px"替換爲"",因爲它不是字符串,因此您將得到一個Uncaught Exception,並且代碼執行在此處停止。實際上,它甚至沒有得到由2原因,它已經採空

乘以所以這就是爲什麼你可以在第一行後不SE執行

編輯:爲了實現自己的乘法或任何操作,你需要你應該檢索該數值屬性你需要.attr().css()這樣的:

$("#h1").css("height").replace("px","") 

將與該數值返回一個字符串沒有px前綴,現在你可以做w^hatever您需要的值:

$("#h1").css("height", parseInt($("#h1").css("height").replace("px",""),10)*2); 
0

你得到一個類型錯誤調用函數replace一個jQuery對象。應該在字符串上調用 replace

相關問題