zoukankan      html  css  js  c++  java
  • javascript代码片段

    DOMReady函数,只要DOM结构加载完成即可,不必等待所有资源加载完成,节约时间,"DOMContentLoaded"在H5中被标准化

    	var DOMReady=function(f,a,d){
    	d = d || document;
    	a = a || "addEventListener";
    	d[a]?d[a]('DOMContentLoaded',f,false):window.attachEvent('onload',f);
    }
    
    	DOMReady(function(){
    		alert("The DOM is Ready");
    	})

    检查元素是否在视窗(分完全在视窗内,部分在视窗内以及完全不在视窗内)

    function isInViewPort(ele){
    	var rect=ele.getBoundingClientRect();
    	alert(rect.top+","+rect.right+","+rect.bottom+","+rect.left);
    	var newRect=getRect(ele);
    	alert(newRect.top+","+newRect.right+","+newRect.bottom+","+newRect.left);
    	return rect.top < (window.innerHeight || document.documentElement.clientHeight) &&
    				rect.right < (window.innerWidth || document.documentElement.clientWidth) &&
    				rect.bottom < (window.innerHeight || document.documentElement.clientHeight) &&
    				rect.left < (window.innerWidth || document.documentElement.clientWidth);
    }
    

    IE7及以下浏览器的坐标从(2,2)开始计算,需要提供兼容方案

    function getRect(ele){
    	var rect=ele.getBoundingClientRect();
    	var top=document.documentElement.clientTop; //IE=2 非IE=0
    	var left=document.documentElement.clientLeft; //IE=2 非IE=0
    	return{
    		top:rect.top-top,
    		bottom:rect.bottom-top,
    		left:rect.left-left,
    		right:rect.right-left
    	}
    }
    

      

  • 相关阅读:
    常见的eclipse和真机出现的问题
    volley+okhttp封装,一行代码就可访问网络
    android异步任务处理(网络等耗时操作)
    android手机短信获取
    Android从启动到程序运行整个过程的整理
    android中的广播
    图片旋转问题
    Android Satudio的使用记录
    百度地图初学者
    简单的图片上传和下载
  • 原文地址:https://www.cnblogs.com/diantao/p/4937411.html
Copyright © 2011-2022 走看看