2013-03-13 138 views
2

我想CSS列布局,並與身份證「文章」一個div元素的正常佈局之間切換,但jQuery的不工作......整個事情就這樣消失。任何人都可以告訴我如何在切換功能中使用jQuery刪除css屬性?我讀到,你可以刪除像下面這樣的屬性...但它不工作......任何人都可以請告訴我正確的方式來做到這一點?jQuery的切換與CSS屬性

function changeview(orientation){ 
    $('#article').toggle(function(){ 
     $('#article').css('-webkit-column-width' : '768px', 'height' : '885px');       
    },function(){         
     $('#article').css('-webkit-column-width' : '', 'height' : '');        
    }); 
} 
+0

沒有設置CSS屬性爲空字符串'「」'。如果您想將「高度」設置爲默認值,請將其設置爲「自動」。與'-webkit-column-width'一樣,儘管你可以只使用'column-width',它可以在現代瀏覽器中使用。 – MattDiamant 2013-03-13 19:10:23

+2

你最好添加/刪除類。你的語法也不正確。使用$('#article')。css({' - webkit-column-width':'768px'});或$('#article')。css(' - webkit-column-width','768px'); – Derek 2013-03-13 19:12:27

+0

此外,對於記錄,「toggle」已棄用。 – MattDiamant 2013-03-13 19:17:33

回答

1

您可以使用addClass與removeClass這一點。

<style> 
    .newCSS { 
     -webkit-column-width : 768px; 
     height : 885px; 
    } 
</style> 

和jQuery的

$('#article').toggleClass("newCSS"); 

也取得了小提琴(簡單的演示):http://jsfiddle.net/VXmZp/

+1

怎麼樣只有'.toggleClass( 'newCSS');'? – 2013-03-13 19:14:56

+1

@roXon編輯,感謝更好的解決方案。 – tymeJV 2013-03-13 19:17:06

1

LIVE DEMO

function changeview(orientation){ 
    $('#article').click(function(){  
     var has_H = $(this).height() >= 885 ;   
     $(this).css({ 
      '-webkit-column-width': has_H ? 'auto' : 768, 
         'height': has_H ? 'auto' : 885 
     }); 
    }); 
} 
+0

包裹在物體的CSS的內容'{}':-) – MattDiamant 2013-03-13 19:14:26

+0

@MattDiamant哈哈哈哈是啊錯過了THX) – 2013-03-13 19:17:24