有鱼前端面经

一:有鱼

1,设某元素id为show,如何设置其在ios中显示,在android中不显示

var userAgent=navigator.userAgent.toLowerCase();
var platform;
if(/android/.test(userAgent)){
	platform="android";
	document.getElementById("show").style.display="none";
}else if(/ios/.test(userAgent)){
	platform="ios";
	document.getElementById("show").style.display="block";
}

2,若数组a=[2,1,4,3,7,6],求出a数组最大的差值

var maxC=function(arr){
    var max=Math.max.apply("",arr);
    var min=Math.min.apply("",arr);
    var c=max-min;
    return c;
}
3,设对象obj={a:'1',b:'2'};分别将obj用cookie 和localStorage塞进去

  

存值:

var _setStorage=function(obj){
     var localStorage=window.localStorage;
     if(localStorage){
          localStorage.setItem(obj.a.obj.b);
     }else{
          var _obj=obj.a+"=" +obj.b;
          document.cookie=_obj;
     }
}

获取:

var getCookie=function(key){
     var result={};
     var localStorage=window.localStorage;
     if(localStorage){
          return localStorage.getItem(key);
     }else{
           var cookie=document.cookie.split(";");
           cookie.forEach(function(item){
                 var pair=item.split("=");
                  result[pair[0]]=pair[1];
           });
           return result[key];
     }
}

4,如何编写阻止冒泡,组织默认事件

方法一:
阻止冒泡:

e.stopPropogation()
组织默认事件

e.preventDefault();

方法二:

return false;

5,盒子模型box-sizing的值有哪些:

   值一:content-box:默认值,标准盒子模型,width和height只包括内容的宽和高,不包括边框(border),内边距(padding),外边距(margin),注意,边框,内边距,外边距都在盒子的外部,比如:

   

{
   width:350px;
   border:10px solid black;
}
那么在浏览器的实际宽度为370px;

值二:border-box: width和height 属性包括内容,内边距和边框,但不包括外边距,这时文档处于IE盒模型,注意:填充和边框将处于盒子内,例如:

{
   width:350px;
   border:10px solid black;
}

导致浏览器中呈现的宽度为350px的盒子。内容框不能为负,所以分配为0,

width = border + padding + 内容的  width
height = border + padding + 内容的 height

值三:padding-box:width和Height包括内容和内边距,但不包括边框和外边距,使得不可能使用border-box将元素删除。


猜你喜欢

转载自blog.csdn.net/qq_33358062/article/details/80208831