coolButton------JavaScript

该博客主要展示了使用JavaScript实现coolButton交互效果的代码。包含coolButton.js文件,定义了鼠标事件处理函数,如鼠标悬停、移出、按下、点击等,还定义了禁用、启用按钮等功能函数。同时给出了coolbutton.html文件,引入js文件并展示了按钮效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一.coolButton.js

document.onmouseover = doOver;
document.onmouseout  = doOut;
document.onmousedown = doDown;
document.onmouseup   = doUp;
document.onclick   = doClick;
function doOver() {
 var toEl = getReal(window.event.toElement, "className", "coolButton");
 var fromEl = getReal(window.event.fromElement, "className", "coolButton");
 if (toEl == fromEl) return;
 var el = toEl;
 
 var cDisabled = el.cDisabled;

 cDisabled = (cDisabled != null);
 
 if (el.className == "coolButton")
  el.onselectstart = new Function("return false");
 
 if ((el.className == "coolButton") && !cDisabled) {
  if(el.havearrow==1){
  makeRaised(el);
  makeRaised(eval(el.aname));
  }
  else{makeRaised(el);}

 }
}

function doOut() {
 var toEl = getReal(window.event.toElement, "className", "coolButton");
 var fromEl = getReal(window.event.fromElement, "className", "coolButton");
 if (toEl == fromEl) return;
 var el = fromEl;

 var cDisabled = el.cDisabled;
 cDisabled = (cDisabled != null);

 var cToggle = el.cToggle;
 toggle_disabled = (cToggle != null);

 if (cToggle && el.value) {
  
  makePressed(el);
  

 }
 else if ((el.className == "coolButton") && !cDisabled) {
  if(el.havearrow==1){
  makeFlat(el);
  makeFlat(eval(el.aname));
  }
  else{makeFlat(el);}
  makeFlat(el);
  
 }

}

function doDown() {
 el = getReal(window.event.srcElement, "className", "coolButton");
 
 var cDisabled = el.cDisabled;
 cDisabled = (cDisabled != null); // If CDISABLED atribute is present
 
 if ((el.className == "coolButton") && !cDisabled) {
  makePressed(el)
  
 }
}

function doClick() {
 el = getReal(window.event.srcElement, "className", "coolButton");
 
 var cDisabled = el.cDisabled;
 cDisabled = (cDisabled != null);
 
 if ((el.className == "coolButton") && !cDisabled) {
  makePressed(el)
  
 }
}

function doUp() {
 el = getReal(window.event.srcElement, "className", "coolButton");
 
 var cDisabled = el.cDisabled;
 cDisabled = (cDisabled != null);
 
 if ((el.className == "coolButton") && !cDisabled) {
  makeRaised(el);
 }
}


function getReal(el, type, value) {
 temp = el;
 while ((temp != null) && (temp.tagName != "BODY")) {
  if (eval("temp." + type) == value) {
   el = temp;
   return el;
  }
  temp = temp.parentElement;
 }
 return el;
}

 

function disable(el) {

 if (document.readyState != "complete") {
  window.setTimeout("disable(" + el.id + ")", 100);
  return;
 }
 
 var cDisabled = el.cDisabled;
 
 cDisabled = (cDisabled != null);
 if (!cDisabled) {
  el.cDisabled = true;
  
  if (document.getElementsByTagName) { 
   el.innerHTML = "<span style='background: buttonshadow; filter: chroma(color=red) dropshadow(color=buttonhighlight, offx=1, offy=1); width: 100%; height: 100%; text-align: center;'>" +
       "<span style='filter: mask(color=red); width: 100%; height: 100%; text-align: center;'>" +
       el.innerHTML +
       "</span>" +
       "</span>";
  }
  else { // IE4
   el.innerHTML = '<span style="background: buttonshadow; width: 100%; height: 100%; text-align: center;">' +
       '<span style="filter:Mask(Color=buttonface) DropShadow(Color=buttonhighlight, OffX=1, OffY=1, Positive=0); height: 100%; width: 100%%; text-align: center;">' +
       el.innerHTML +
       '</span>' +
       '</span>';
  }
  
  

  if (el.onclick != null) {
   el.cDisabled_onclick = el.onclick;
   el.onclick = null;
  }
 }
}

function enable(el) {
 var cDisabled = el.cDisabled;
 
 cDisabled = (cDisabled != null);
 
 if (cDisabled) {
  el.cDisabled = null;
  el.innerHTML = el.children[0].children[0].innerHTML;

  if (el.cDisabled_onclick != null) {
   el.onclick = el.cDisabled_onclick;
   el.cDisabled_onclick = null;
  }
 }
}

 

 

function makeFlat(el) {
 with (el.style) {
  background = "";
  border = "1px solid buttonface";
  padding      = "1px";
 }
}

function makeRaised(el) {
 with (el.style) {
  borderLeft   = "1px solid buttonhighlight";
  borderRight  = "1px solid buttonshadow";
  borderTop    = "1px solid buttonhighlight";
  borderBottom = "1px solid buttonshadow";
  padding      = "1px";
 }
}

function makePressed(el) {
 with (el.style) {
  borderLeft   = "1px solid buttonshadow";
  borderRight  = "1px solid buttonhighlight";
  borderTop    = "1px solid buttonshadow";
  borderBottom = "1px solid buttonhighlight";
  paddingTop    = "2px";
  paddingLeft   = "2px";
  paddingBottom = "0px";
  paddingRight  = "0px";
 }
}

 

document.write("<style>");
document.write(".coolBar {background: buttonface;border-top: 1px solid buttonhighlight; border-left: 1px solid buttonhighlight; border-bottom: 1px solid buttonshadow; border-right: 1px solid buttonshadow; padding: 2px; font: menu;}");
document.write(".coolButton {border: 1px solid buttonface; padding: 1px; text-align: center; cursor: default;font-size:12px;font-family:ms shell dlg;line-height:20px}");
document.write(".coolButton IMG {filter:;}");
document.write("</style>");

 二.coolbutton.html

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<script language="javascript" src="coolbuttons.js"></script>
</HEAD>

<BODY>
<table bgcolor=buttonface>
   <tr>
      <td class="coolButton" nowrap height=10 width=100>&nbsp;&nbsp;coolbutton&nbsp;&nbsp;</td>
   <td class="coolButton" nowrap height=10 width=100>&nbsp;&nbsp;url&nbsp;&nbsp;</td>
   </tr>
</table>
</BODY>
</HTML>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值