日期:2014-05-16  浏览次数:20481 次

这句话我该如何理解
objX = parseInt($('source_div').style.left || $('source_div').offsetLeft) || 0,



$addEvent(document,'click',function(event){
  var evt = window.event || event
  traceX = evt.clientX,
  traceY = evt.clientY,  
  objX = parseInt($('source_div').style.left || $('source_div').offsetLeft) || 0,
  objY = parseInt($('source_div').style.top || $('source_div').offsetTop) || 0,
  distance = Math.sqrt(Math.pow(traceX-objX ,2)+Math.pow(traceY-objY,2)),
  //sin
  s = (traceY-objY)/distance, 
  //cos
  c = (traceX-objX)/distance,
  t = 0;
  clearInterval(st);

------解决方案--------------------
先根据浏览器去确定objX的值。。应该和var evt = window.event || event这样的形式差不多。。我是这样理解的
------解决方案--------------------
浏览器兼容性
支持.style.left的就这么赋值,否则为空按后面的赋值
------解决方案--------------------
|| 这个是或运算啊。只要里面有一个是对的,就不考虑其它的。。
显然如果前面的有错误(为空null,或是未定义undefine),最后的值便是0