MediaWiki:Common.js: Difference between revisions

Jump to navigation Jump to search
no edit summary
No edit summary
No edit summary
 
Line 749: Line 749:


$(document).ready(function() {
$(document).ready(function() {
     var $specialChars = $('#editpage-specialchars');
     var $element = $('#editpage-specialchars');
     var elementOffsetTop = $specialChars.offset().top;
     var isDragging = false;
    var startX, startY, initialX, initialY;


     $(window).on('scroll', function() {
     $element.on('mousedown', function(e) {
         var scrollTop = $(window).scrollTop();
         isDragging = true;
        startX = e.clientX;
        startY = e.clientY;
        initialX = $element.offset().left;
        initialY = $element.offset().top;
        $element.addClass('dragging');
    });


         if (scrollTop >= elementOffsetTop) {
    $(document).on('mousemove', function(e) {
             $specialChars.addClass('sticky-sidebar');
         if (isDragging) {
         } else {
            var dx = e.clientX - startX;
             $specialChars.removeClass('sticky-sidebar');
            var dy = e.clientY - startY;
             $element.css({
                top: initialY + dy + 'px',
                left: initialX + dx + 'px'
            });
         }
    });
 
    $(document).on('mouseup', function() {
        if (isDragging) {
            isDragging = false;
             $element.removeClass('dragging');
         }
         }
     });
     });
});
});

Navigation menu