2016-06-14 77 views
1

我有这2个元素p.rdmoreul.post-ul-more与属性display = none在CSS中。使用javascript更改CSS元素

但是,在某些特定页面上,我想删除这些选项。我做了一些研究,并提出了这个代码

<script type='text/javascript'> 
$('p.rdmore').removeClass('none').addClass('inherit'); 
$('ul.post-ul-more').removeClass('none').addClass('inherit'); 
</script> 

我试过一个JavaScript的if语句,但它没有奏效。我在这里错过了什么吗?

+0

发生了什么以及您期望它应该如何工作......在控制台中出现错误? – guradio

+0

这些元素是否为'none'和'inherit'类? – Cfreak

回答

1

您必须使用css()方法来更改CSS属性,例如显示。请尝试以下操作:

$('p.rdmore').css("display", "inherit"); 
$('ul.post-ul-more').css("display", "inherit"); 

.css()通过jQuery更改元素的CSS。阅读更多关于here

如果我想改变的背景下,我只是这样做:

$("element-right-here").css("background-color", "yellow"); 

的参数是.css(propertyName, propertyValue).css(propertyName)。后者将在被调用的位置返回实际值。

+0

@AnnaJean代码是否工作? – Li357

1

如果你只是想显示的元素,你可以使用jQuery的方法。

$('p.rdmore').show() 

如果你想隐藏它:

$('p.rdmore').hide() 

或者,如果你要来回走,你可以有一个事件触发它:

$('p.rdmore').toggle() 

在最后一种情况下,如果jQuery可见或不可见,jQuery将为你找出并反转它。

0

您可以使用下面的代码,这将更有效。

<script type='text/javascript'> 
$(function(){ 
$('p.rdmore').toggleClass('none inherit'); 
$('ul.post-ul-more').toggleClass('none inherit'); 
}); 
</script> 
+0

谢谢。我一定会尝试。 –