我已经完成了一个导航,当使用jquery完成移动视图时,该导航会显示完整文档。
我正在尝试取消返回auto的高度,或者只删除上一个jquery中给出的style属性。
但由于某些原因它不起作用,我尝试过一些东西,但它根本不起作用。
如果通过jquery给出了样式属性,你能否取消它?
以下是在移动视图中打开和关闭导航的导航:
// Mobile Navigation Area
jQuery('.menu-icon-mobile').on('click',function(event){
event.preventDefault();
var currentId = jQuery(this).attr('id');
var mobileHeight = jQuery(document).height();
switch (currentId){
case 'mobile-nav-open':{
jQuery('.navigation').animate({height: mobileHeight + "px"}, 400 );
jQuery(this).attr('id','mobile-nav-close');
}
break;
case 'mobile-nav-close':{
jQuery('.navigation').animate({height: "0px"}, 400 );
jQuery(this).attr('id','mobile-nav-open');
}
break;
}
});
这是调整大小的代码,我添加了警告,以显示其绑定,它是:(
//checking if the screen is resized and if it is and the screen is less that 768px wide then cancel the attributes
jQuery(window).resize(function(){
var thescreen = jQuery(window).width();
if(thescreen > 768){
jQuery('.navigaiton').removeAttr('style');
}
alert(thescreen);
});
我可以看到它应该可以工作,我唯一能想到的是样式属性在现实生活中不存在,因为它使用jquery完成,所以它无法看到样式属性来删除它。
知道如何删除属性吗?
这是jsfiddle链接:
http://jsfiddle.net/robertg/kn1scc2f/2/
由于
答案 0 :(得分:4)
你拼错了你的选择器。
变化:
jQuery('.navigaiton')
要:
jQuery('.navigation')
答案 1 :(得分:1)
您可以使用下面的代码从标记中完全删除任何css属性
$('your-selector').css('height', '');