我有一個使用的jQuery的.css()方法來修改一個DIV的樣式代碼,但它無法正常工作。這裏是我的代碼的簡化版本,它複製了這個問題。的jQuery的.css()方法不工作
HTML:
<input type="radio" name="show" id="showleft" value="showleft">Left
<input type="radio" name="show" id="showright" value="showright">Right
<div id="cfwrapper">XXXXXXXXX</div>
CSS:
#cfwrapper {
bottom: 10px;
left: 30px;
position: fixed;
}
的JavaScript:
$("input:radio[name=show]").click(function(event){
if (event.target.id == 'showleft') {
// remove property 'right:30px'
// add property 'left:30px'
} else if (event.target.id == 'showright') {
$('#cfwrapper').css('left',''); // remove property 'left:30px'
// add property 'right:30px'
}
});
會發生什麼事在上面的代碼是該行$('#cfwrapper').css('left','');
不起作用。我希望它刪除「cfwrapper」(「XXXXXXXXX」會再移動30PX向左)「左」屬性,然後我會用類似的語句 - $('#cfwrapper').css('right','30px');
- 添加一個「正確」的屬性,以便「XXXXXXXXX」然後會轉到頁面的右側,但它不起作用。
誰能告訴我,爲什麼它不工作?它不應該工作嗎?
的jsfiddle:http://jsfiddle.net/fidnut/hLqngbsb/
http://stackoverflow.com/questions/9398870/remove-css-top-and-left-attributes-with-jquery –
使用時要忽略'auto'其他值 – charlietfl
謝謝大家。 Bungle的確回答了這個問題,它是用jQuery寫的!我應該開始更多關注官方幫助信息。但我知道使用額外的類,而不是試圖修改選擇器來實現相同的結果,但我的樣式表已經太複雜了,我想避免創建更多的類。這就是爲什麼我非常喜歡Cattla解決方案(也被charlietfl提及)。因此,關鍵是不要試圖刪除的內容不能被刪除,而是修改它的方式,它沒有得到的方式(通過使用「自動」)。太好了! –