【发布时间】:2018-10-26 04:53:55
【问题描述】:
你好!
我有一个 Angular 项目,我正在使用 HTML、CSS 和 Jquery。 我有一个段落设置为“显示:无”,我希望它仅在用户单击“按钮”标签时出现。问题是,CSS 在 @media 注释中。而且我不能把它放在像“style=@media all and....”这样的段落标签中,因为HTML文件没有用注释编译。它必须在特定的 CSS 文档中。多亏了这一点,我不能使用 Jquery 来覆盖段落标签的显示。
事情是这样的:
HTML:
<p id="two">
The history of ...</p>
CSS:
@media all and (max-width: 580px) {
p#two
{
display: none;
}
}
jquery:
$(document).ready(function(){
$("p#one button").click(function(){
$("p#two").attr("style", "display: normal")
});
});
我还尝试了类似的 Jquery:
$("p#one button").click(function(){
$("p#two").css({"display" : "normal"});
});
或
$("p#one button").click(function(){
$("p#two").css({
display : 'normal'});
});
但似乎没有什么可以覆盖“显示:无”。 我该怎么做才能解决这个问题?
【问题讨论】:
-
Please read this first. 你不应该在 Angular 应用程序中使用 jQuery 操作 DOM。
-
回到主题,
normal不是display的有效值。试试block。 -
您尝试执行的逻辑应该与按钮上的
ng-click相关,该按钮会更改角度应用程序中某个位置的状态,用于确定其他元素是否是显示与否,使用ng-show或ng-hide -
@Taplar,这将在 AngularJS 中。
-
好的,所以快速搜索看起来像是
(click)="function"。 stackoverflow.com/questions/40211730/… 同样的概念也适用。这个逻辑应该用角度绑定而不是 jQuery 来完成