jQuery类选择器不起作用,id选择器只适用于“body”
我正在尝试使用jquery应用CSS值,但类选择器或id选择器由于某种原因不起作用。
这是我的小提琴:
如果我使用id =“kitten”,你可以看到没有任何反应。
HTML
脚本
$(function(){ var x = 0; setInterval(function(){ x-=1; $("kitten").css("background-position", x + "px 0"); }, 10); });
CSS
html, body { height: 100%; width: 100%;} #kitten { background-image: url("http://sereedmedia.com/srmwp/wp-content/upload/kitten.jpg"); background-repeat: repeat-x; }
这是行不通的。 但是,如果我使用“body”而不是id – 所有都开始工作。
摆弄“身体”
为什么我不能使用jQuery id选择器或类选择器?
首先你需要做的:
$("#kitten").css("background-position", x + "px 0");
因为你没有得到Id选择器。
并定义div的宽度和高度,以显示您的图像:
#kitten { background-image: url("http://sofzh.miximages.com/javascript/kitten.jpg"); background-repeat: repeat-x; width: 390px; <----- LIKE this height: 200px; <----- LIKE this }
DEMO
要引用id,您需要在id本身之前使用hash,就像在css中一样。 正确的代码是:
$("#kitten").css("background-position", x + "px 0");
$("kitten").css("background-position", x + "px 0");
这条线错了..
这个人会做的伎俩
$("#kitten").css("background-position", x + "px 0");
你需要为ID选择器添加正确的字符串文字,请在此处进行检查。
Id选择器以#
为前缀:
$("#kitten").css("background-position", x + "px 0");
类选择器将以a为前缀.
例如,如果kitten
是一个class级:
$(".kitten").css("background-position", x + "px 0");
当您使用body
选择器时,您使用的标签选择器没有前缀。
$("input"); //selects all input tags
对于大多数基本选择器,只需遵循CSS选择器语法。
您的选择器缺少用于按ID选择标签的#:
$("#kitten")