2011-10-04 78 views
0

我想在拖动过程中更改可拖动元素的属性(字体颜色,背景颜色,z-index)。我不知道问题是否是IE9,但是有代码工作的属性,还有其他的代码不工作。关于更改可拖动元素的属性

$(function() { 
    $('.comurl').draggable({ 
     start: function(event, ui) { 
      $(this).css("background-color","red"); //works 
      $(this).css("color","red");   //doesn't 
      $(this).css("z-index","999999");  //doesn't 
      }, 
     stop: function(event, ui) { 
      $(this).css("background-color","green"); //works 
      $(this).css("color","green");   //doesn't 
      $(this).css("z-index","auto");   //doesn't 
     } 
    }); 
}); 

以这种方式调用属性的名称是否不同?这是IE9的问题吗?

+1

有趣的...你能[JSFiddle](http://jsfiddle.net/)演示? –

+0

'$(this).css({“background-color”:“red”,“color”:“red”,“z-index”:“999999”});'? –

回答

3

为什么不使用类呢?

$(function() { 
    $('.comurl').draggable({ 
     start: function(event, ui) { 
      $(this).addClass('dragging'); 
      }, 
     stop: function(event, ui) { 
      $(this).removeClass('dragging'); 
     } 
    }); 
}); 

注:有一个默认类(ui-draggable-dragging),你可以在你的CSS使用,而无需编写任何额外的js为好。

+1

有,它被称为'ui-draggable-dragging'。 – kapa

+0

谢谢@bazmegakapa –

+0

也+1 1您的答案,我不知道为什么OP的代码不起作用,但CSS定义不属于您的jQuery代码。它很容易和很快变得不可维护。使用课堂是一个更好的做法。 – kapa