Problem związany jest z bardzo duży obciążeniem procesora. Od kilku dni szukałem tego błędu w swoim kodzie, zrefaktoryzowałem go kilka razy, a tu niespodziewanie zawiniło jQuery w wersji 1.2 i 1.2.1. Oto sposób na odtworzenie błędu:

wystarczy stworzyć stronę o treści podobnej do tej (zamiast jqDnR może zostać wykorzystany każdy inny plugin oferujący możliwość przeciągania i upuszczania):

<html>
  <head>
          <script type="text/javascript" src="http://jqueryjs.googlecode.com/files/jquery-1.2.1.pack.js"></script>
          <script type="text/javascript" src="http://dev.iceburg.net/jquery/jqDnR/jqDnR.js"></script>
          <script type="text/javascript">
                  $(document).ready(function(){
                  $("#drawing").jqDrag();
                  });
          </script>
  </head>
  <body>
  
          <div style="position:relative;left:50;top:50;display:block;background-color:red; width: 50px; height: 50px;" id="drawing"/>
  </body>
</html>

następnie wchodzimy na tę stronę i wykonujemy kilkukrotnie operację przeciągania i upuszczania, potem wystarczy ruszać myszką w obrębie strony i obserwować zużycie procesora.

Demo

Dla porównania proponuję przeprowadzić ten sam eksperyment na stronie, która korzysta z jQuery w wersji 1.1.4

<html>
  <head>
          <script type="text/javascript" src="http://jqueryjs.googlecode.com/files/jquery-1.1.4.pack.js"></script>
          <script type="text/javascript" src="http://dev.iceburg.net/jquery/jqDnR/jqDnR.js"></script>
          <script type="text/javascript">
                  $(document).ready(function(){
                  $("#drawing").jqDrag();
                  });
          </script>
  </head>
  <body>
  
          <div style="position:relative;left:50;top:50;display:block;background-color:red; width: 50px; height: 50px;" id="drawing"/>
  </body>
</html>

Demo

Z szybkich testów, które właśnie przeprowadzam wynika, że wersja 1.2 posiada problem z „uwalnianiem” zdarzenie mousemove. Po zakończeniu operacji przeciągania i opuszczania cały czas przechwytywane są te zdarzenia i co więcej (jak wynika z firebuga) jQuery dla każdego takiego zdarzenia wykonuję metodę extend(). Na razie nie znam rozwiązania tego problemu i póki co zalecam korzystanie z jQuery 1.1.4 . Jeszcze dziś błąd zostanie zgłoszony twórcom biblioteki.