我试图在我的div中添加一个类,如果url中存在哈希值:
<script type="text/javascript">
if(window.location.hash) {
alert(window.location.hash);
$(".pinIt").addClass("pinned");
$(".hideIt").addClass("hidden");
$(".changeIt").addClass("changed");
} else {
$(".pinIt").removeClass("pinned");
$(".hideIt").removeClass("hidden");
$(".changeIt").removeClass("changed");
}
</script>
HTML:
<header class="changeIt">
</header>
<div class="heading">
<h1 class="hideIt">Test</h1>
<h2 class="pinIt">
</h2>
</div>
我的脚本显示警报但不添加类。 问题在哪里?
答案 0 :(得分:2)
问题是你的代码是在pinIt等存在之前运行的。 你需要把它包起来:
$(function(){
if(window.location.hash) {
alert(window.location.hash);
$(".pinIt").addClass("pinned");
$(".hideIt").addClass("hidden");
$(".changeIt").addClass("changed");
} else {
$(".pinIt").removeClass("pinned");
$(".hideIt").removeClass("hidden");
$(".changeIt").removeClass("changed");
}
});
来自jquery Here的更多信息