Изменение влево и вверх динамически в css hover [duplicate]

Я пытаюсь изменить CSS с помощью jQuery:

$(init);
    
function init() {
    $("h1").css("backgroundColor", "yellow");
    $("#myParagraph").css({"backgroundColor":"black","color":"white");
    $(".bordered").css("border", "1px solid black");
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<div class="bordered">
    <h1>Header</h1>
    <p id="myParagraph">This is some paragraph text</p>
</div>

Что мне здесь не хватает?

114
задан 11 April 2017 в 23:25

8 ответов

Чтобы немного разобраться, поскольку некоторые из ответов предоставляют неверную информацию:

Метод jQuery .css () позволяет использовать нотацию DOM или CSS во многих случаях. Таким образом, обе backgroundColor и background-color будут выполнены.

Кроме того, когда вы вызываете .css() с аргументами, у вас есть два варианта относительно того, что могут быть аргументами. Они могут быть либо разделенными запятыми строками, представляющими свойство css, так и его значением, или это может быть объект Javascript, содержащий одну или несколько пар ключей значений свойств и значений CSS.

В заключение единственное, что неправильно с ваш код отсутствует }. Строка должна читаться:

$("#myParagraph").css({"backgroundColor":"black","color":"white"});

Вы не можете оставить фигурные скобки, но вы можете оставить цитаты из backgroundColor и color. Если вы используете background-color, вы должны ставить кавычки вокруг него из-за дефиса.

В целом, хорошая привычка цитировать ваши объекты Javascript, .css () . [ ! d8]

Последнее замечание о том, что метод jQuery .css ()

$(handler);

равен .css () с:

$(document).ready(handler);

, а также с третьей не рекомендованной формой.

Это означает, что $(init) полностью верен , так как init является обработчиком в этом экземпляре. Таким образом, init будет запущен при построении DOM.

22
ответ дан 15 August 2018 в 15:48

$ (". radioValue"). css ({"background-color": "- webkit-linear-gradient (# e9e9e9, rgba (255, 255, 255, 0.43137254901960786), # e9e9e9)", "color" : «# 454545», «padding»: «8px»});

0
ответ дан 15 August 2018 в 15:48

неверный код: $("#myParagraph").css({"backgroundColor":"black","color":"white");

отсутствует "}" после white"

изменить его на

 $("#myParagraph").css({"background-color":"black","color":"white"});
0
ответ дан 15 August 2018 в 15:48
  • 1
    Вы только что повторили самый популярный ответ, только 3 1/2 года спустя. – Curtis Patrick 8 May 2014 в 03:29

$(function(){ 
$('.bordered').css({
"border":"1px solid #EFEFEF",
"margin":"0 auto",
"width":"80%"
});

$('h1').css({
"margin-left":"10px"
});

$('#myParagraph').css({
"margin-left":"10px",
"font-family":"sans-serif"
});

});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<div class="bordered">
<h1>Header</h1>
<p id="myParagraph">This is some paragraph text</p>
</div>

0
ответ дан 15 August 2018 в 15:48
  • 1
    Хотя этот код может ответить на вопрос, предоставление информации о том, как и почему оно решает проблему, улучшает ее долгосрочную ценность. – L_J 14 August 2018 в 12:11

Просто хотелось добавить, что при использовании чисел для значений с помощью метода css вы должны добавить их вне апострофа, а затем добавить блок CSS в апострофы.

$('.block').css('width',50 + '%');

или

var $block = $('.block')    

$block.css({ 'width': 50 + '%', 'height': 4 + 'em', 'background': '#FFDAB9' });
174
ответ дан 15 August 2018 в 15:48
[F1]
0
ответ дан 15 August 2018 в 15:48

Когда вы используете множественное свойство css с jQuery, тогда вы должны использовать фигурные скобки в начале и в конце. Вам не хватает конечной фигурной скобки.

function init() {
 $("h1").css("backgroundColor", "yellow");

 $("#myParagraph").css({"background-color":"black","color":"white"});

 $(".bordered").css("border", "1px solid black");
}

Вы можете посмотреть этот учебник jQuery CSS Selector.

8
ответ дан 15 August 2018 в 15:48

Вы можете сделать это:

$("h1").css("background-color", "yellow");

Или:

$("h1").css({backgroundColor: "yellow"});
42
ответ дан 15 August 2018 в 15:48
  • 1
    {"backgroundColor": "yellow"} является действительным, хотя и лишним. – Tgr 17 September 2010 в 00:37
  • 2
    @tgr: почему это лишнее? – user449914 17 September 2010 в 00:38
  • 3
    @Tgr: Вы правы, просто дали дополнительную возможность :) – Sarfraz 17 September 2010 в 00:38
  • 4
    @ user449914: вам не нужно помещать кавычки вокруг имен свойств в литерал объекта - {foo: "bar"} совпадает с {"foo": "bar"}. – Tgr 17 September 2010 в 00:44

Другие вопросы по тегам:

Похожие вопросы: