2013-11-20 3 views
0

HTML:Переопределение встроенный CSS с JQuery

<div id="myDiv"> 

//Some content 

</div> 

Я хочу, чтобы установить ниже CSS в DIV с помощью JQuery:

Transform: matrix(1, 0, 0, 1, 461, 300) 

Но DIV имеет уже встроенный стиль

Transform: translate3d(0px, 0px, 0px) 

Когда я назначаю css через jQuery, он не принимает.

$(“#myDiv”).css("transform", "matrix(1, 0, 0, 1, 461, 300)"); 

Как решить проблему?

Update:

Я также использую файл JS в нижней части страницы (т.е. ниже </body> тега). Я написал код в $ (window) .load (function() {}) событие и оно применяется. Но у меня есть мерцающий эффект из-за перестановки позиции.

+2

Вы можете создать [скрипку] (Http: // jsfiddle.net) с вашей проблемой, чтобы я мог видеть более широкий охват здесь? – FastTrack

+4

Почему бы вам не создать для него класс и добавить его к нему с помощью '.addClass()'? –

+0

Вы можете заменить весь атрибут: '(« #myDiv »). Attr (« style »,« transform: matrix (1, 0, 0, 1, 461, 300) »);' – Moob

ответ

-1

Попробуйте добавить !important правилу CSS, как:

$(“#myDiv”).css("transform", "matrix(1, 0, 0, 1, 461, 300) !important"); 
+1

'! Important' не поддерживается JQuery при его использовании. Более того inline css переопределяет классы css – Satpal

+1

Вы ** не можете ** добавить! Важно для CSS в javascript, по крайней мере, не так – adeneo

3

Проверьте это:

setTimeout(function(){ 
    $("#myDiv").css("transform", "matrix(1, 0, 0, 1, 461, 300)"); 
}, 1000); 

я установить тайм-аут, чтобы иметь возможность видеть из изменений.

Working Demo

Я бы сказал, что проблема из-за этого странные цитаты у вас есть вокруг #myDiv.

0

У вас есть неправильные кавычки в вас селектор: $(“#myDiv”)

$("#myDiv").css("transform", "matrix(1, 0, 0, 1, 461, 300)"); отлично работает для меня теперь:

Образец
http://jsfiddle.net/xQ3bJ/

Смежные вопросы