HTML前端编程技巧

IE8下DIV嵌套高度自适应

IE8在默认情况下不会对DIV进行高度自适应,而IE6、7下设置DIV高度为auto即可自适应高度;解决方法:父DIV的CSS设置display:table\0;即可使其随内部嵌套DIV高度自适应。

第二代身份证号码的验证机制

如下JS代码进行二代身份证验证(代码转载自盛大网络)

iW = new Array(7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2,1);
iSum = 0;
for( i=0;i<17;i++){
    iC = v_card.charAt(i) ;
    iVal = parseInt(iC);
    iSum += iVal * iW[i];
}
iJYM = iSum % 11;
var sJYM = '';
if(iJYM == 0) sJYM = "1";
else if(iJYM == 1 ) sJYM = "0";
else if(iJYM == 2 ) sJYM = "x";
else if(iJYM == 3 ) sJYM = "9";
else if(iJYM == 4 ) sJYM = "8";
else if(iJYM == 5 ) sJYM = "7";
else if(iJYM == 6 ) sJYM = "6";
else if(iJYM == 7 ) sJYM = "5";
else if(iJYM == 8 ) sJYM = "4";
else if(iJYM == 9) sJYM = "3";
else if(iJYM == 10) sJYM = "2";
var cCheck = v_card.charAt(17).toLowerCase();
if( cCheck != sJYM ){
    return false; //对不上就是假号码
}

 打开网页时提示 Stack overflow at line: 0

打开京东或淘宝网站时,经常会弹出JS错误提示Stack overflow at line: 0;

初步分析,可能是由于页面所含图片文件太多,部分图片未正确加载导致出现该错误,查看图片调用代码,大致如下:

<img src=”*.gif” onerror=”javascript:this.src=’noPic.gif’;” alt=”产品” />
由于IMG中使用了错误处理函数onerror,当src指定的图片无法加载或网络延迟未正确加载时,就会触发onerror事件;但如果执行onerror事件时,重定向的图片src仍无法加载时,就会再次触发onerror出现死循环,所以会报该JS错误。
为了安全使用onerror事件,可以直接调用如下函数:

<script type=”text/javascript”>

<!–

function noexist(){

var img=event.srcElement;

img.src=”nopic.gif”;

img.onerror=null; //清除该事件

}

//–>

</script>

原文地址:https://www.cnblogs.com/xyd21c/p/2083409.html