用JS实现渐变效果,兼容各款浏览器

以住做B/S的系统都是以IE浏览器为主,基本上忽略其他的浏览器,这次决定来个大兼容,但在实现背景渐变上就是个大麻烦。本想用图片来实现的,但要兼顾多种分辨率实在不好办,最后在网上找到一个Javascript的实现办法,兼容IE6/7、FF、Safari等,相当完美。好东西不敢独占,贴出来大家共享:

<SCRIPT>
var setGradient = (function(){
	//private variables;
	var p_dCanvas = document.createElement('canvas');
	var p_useCanvas =  !!( typeof(p_dCanvas.getContext) == 'function');
	var p_dCtx = p_useCanvas?p_dCanvas.getContext('2d'):null;
	var p_isIE = /*@cc_on!@*/false;
	
	//test if toDataURL() is supported by Canvas since Safari may not support it
	try{ p_dCtx.canvas.toDataURL() }
	catch(err){ p_useCanvas = false; };

	if(p_useCanvas){
	    return function (dEl , sColor1 , sColor2 , bRepeatY ){
			if(typeof(dEl) == 'string') dEl =  document.getElementById(dEl);
			if(!dEl) return false;
			var nW = dEl.offsetWidth;
			
  • 0
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值