Событие onMove () не запускается в IE9 - PullRequest
0 голосов
/ 16 ноября 2011

Код из демонстрационная ссылка работает на IE8, но не на IE9. В чем причина этого?

Как заставить его работать на IE9?

Код:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <title>Simple drag demo</title>
    <style>
#dragme {
  position:absolute;
  cursor:move;
  background:#eee;
  border:1px solid #333;
  padding:10px;
}
    </style>

<script>
function makeDraggable(element) {

  /* Simple drag implementation */
  element.onmousedown = function(event) {
    if(element.setCapture) { element.setCapture(); }

    document.onmousemove = function(event) {
      event = event || window.event;
      element.style.left = event.clientX + 'px';
      element.style.top = event.clientY + 'px';
    };

    document.onmouseup = function() {
      if(element.releaseCapture) { element.releaseCapture(); }

      document.onmousemove = null;
    };
  };

  /* These 3 lines are helpful for the browser to not accidentally 
   * think the user is trying to "text select" the draggable object.
   * Unfortunately they also break draggability outside the window.
   */
  element.unselectable = "on";
  element.onselectstart = function(){return false};
  element.style.userSelect = element.style.MozUserSelect = "none";
}
</script>

  </head>
  <body onload="makeDraggable(document.getElementById('dragme'))">
    <div id="dragme">Drag me (outside window)</div>
  </body>
</html>

1 Ответ

0 голосов
/ 16 ноября 2011
...