2013-03-13 77 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