javascript - jQuery 将我的显示内联块更改为无
问题描述
我有一个问题,我首先尝试制作一个按钮来隐藏文本并隐藏自身,然后显示一个名为“显示”的新按钮。
我制作了它们hide()
,或者show()
仅当您双击它们时才制作它们,因此我<p>
还说“尝试双击”,仅当您单击一次时才会显示。我成功了hidden:true
。它的显示默认是隐藏的:display:inline-block
我的html:
<button id="hide">hide</button>
<button id="show" hidden="true">show</button>
<p hidden="true">try double click</p>
<h3 class="txtShow">SHOW</h3>
<h3 class="txtShow">SHOW</h3>
<h3 class="txtShow">SHOW</h3>
我的js:
$("#show, #hide").click(function(){
$("p").show();
setTimeout(function(){$("p").hide()}, 800);
});
$("#hide").dblclick(function(){
$(this).hide();
$(".txtShow").hide();
$("#show").show();
});
$("#show").dblclick(function(){
$(this).hide();
$(".txtShow").show();
$("#hide").show();
});
我的CSS:
p {
display: inline-block;
}
问题是:当我点击按钮时,我<p>
有它display
,block
它不会返回inline-block
你能告诉我哪里出错了吗?我该如何纠正它?
解决方案
您可以使用 $('p').css('display', 'inline-block');
使<p>
显示内联。
这是您修改后的代码。了解有关CSS的更多信息
$("#show, #hide").click(function(){
$('p').css('display', 'inline-block');
setTimeout(function(){$("p").hide()}, 800);
});
$("#hide").dblclick(function(){
$(this).hide();
$(".txtShow").hide();
$("#show").show();
});
$("#show").dblclick(function(){
$(this).hide();
$(".txtShow").show();
$("#hide").show();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button id="hide">hide</button>
<button id="show" hidden="true">show</button>
<p hidden="true">try double click</p>
<h3 class="txtShow">SHOW</h3>
<h3 class="txtShow">SHOW</h3>
<h3 class="txtShow">SHOW</h3>
推荐阅读
- safari - 我们可以将 VM 实例与 Testcafe 服务器集成并在这些实例上运行测试吗?
- sqlite - 有没有办法在备份时保留数据库文件属性(如 UID、GID)
- node.js - 使用 nodemon 与反应开发服务器一起运行 Express 服务器时出错
- lisp - cl-who 在函数调用中传递流
- amazon-web-services - 停止和启动实例以节省 EC2 小时
- php - 列出所有包含简码 (WordPress) 的页面
- javascript - 无法访问基于离键的数组值?
- javascript - 我的函数没有创建嵌入,而是转到第一个捕获并错误地发送消息。(末日金字塔)
- javascript - 如果在提示上单击“取消”,是否可以杀死带有多个输入提示的 Javascript 函数?
- python - 使用 Python pysftp 使用密钥文件连接到 SFTP