[英]Using javascript to hide div
我正在使用Javascript隐藏搜索框,直到单击一个框为止。 很好
但是,第一次加载页面时,您可以在此处看到搜索框,一旦页面完全加载,搜索框就会消失。
在单击我的按钮之前,如何隐藏它而不显示它。
这是Javascript:
<script type="text/javascript">
$(function(){
$(".search").hide();
$(".clicktosearch").on("click", function(){
$(".search").slideToggle("600");
.search是实际的搜索框。clicktosearch是用户必须单击才能显示的实际搜索框。
我唯一尝试的是将Javascript移到html框上方,但是,不走运,现在我要在SOF上向大家提问。
您需要在CSS中使用display:none将其初始隐藏。 javascript仅在页面加载后执行,因此您始终会在javascript启动之前短暂看到它。
使用CSS隐藏它。
.search { display:none;}
发生这种情况的原因是在CSS和HTML生效后加载了javascript。 使用CSS将其隐藏,div隐藏之前的时间将减少。
您在document.ready内部具有.hide, $(function(){
是$(document).ready(function() {
缩写$(document).ready(function() {
因此,只需将其放在document.ready之前,它应该可以工作...
<script type="text/javascript">
$(".search").hide(); //moved this line too here
$(function(){
$(".clicktosearch").on("click", function(){
$(".searchr").slideToggle("600");
尽管,我个人更希望将其隐藏在CSS中。
像这样
.search { display: none; }
您必须触摸CSS。
.search {
height: 0px;
}
然后在您的JavaScript中:
$(".clicktosearch").on("click", function(){
$(".search").slideToggle("600");
});
这是您需要的:
CSS
.search { display:none;}
JS
$(".clicktosearch").on("click", function(){
$(".search").slideToggle("600");
});
我删除了$(".search").hide();
因为它是不必要的,并且可能导致其他问题。 (JQuery不需要隐藏已经通过CSS隐藏的内容。)
BTW:如果只有一个匹配元素的.search
,它应该是一个id
等等#search
。 .clicktosearch
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.