元素隐藏
在html中我们经常需要把某些元素隐藏起来,有时候我们需要临时隐藏页面,让其他元素显示,来完成操作。有时候有些信息我们需要传给js,但是又不想给用户看,所以也会隐藏起来。
在html中有这两个方法都可以隐藏元素。
先上一段html代码,然后进行操作。
<!DOCTYPE html> <head> <title>aliens</title> <script src="./js/jquery-2.1.1.js"></script> </head> <body> <form> <label for="firstname" id="firstname">first name:</label> <input type="text" id="firstinput" name="firstname"></input><br/> </form> <button id="submit" value="submit-btn">submit</button> </body></html>
上面的代码很简单,就是一个label input submit button一共就这四个元素。
<style> #firstname{ display: none; }</style>
这个是让id为firstname的元素隐藏起来的代码了。
是不是很简单。还有一个办法:
<style> #firstname{ visibility: hidden; /*visibility: visible; 这个是显示的代码*/ } </style>
这样也隐藏了。
第一种display的方法是隐藏的更彻底一点。也就是说隐藏之后的元素在页面上不占空间了。排版的元素会依次移动把之前元素所占空间全部用掉。
第二种就仅仅是不可见了。但是页面上所占的位置还是它自己的,不会被其他元素所用掉。
这两种方法都可以被JQuery选择器所选择
这个比较简单了。
看下面代码
$('#firstname').hide();
这样就是把这个元素隐藏了。
同理:
$('#firstname').show();
这样就把元素显示了。
很有意思的是,这两个函数都有参数的。
下面是使用方法:
$('#firstname').hide('slow/400/fast', function() { //do something after hide });
第一个参数就是选择隐藏的时间slow / 400 / fast,第二个参数是一个回调函数,来告知浏览器在隐藏元素之后,继续的下一个动作是什么。
例子:
$('#firstname').hide('400', function() { alert("I have been hidden");});
这样就OK了。
实际上上面的方法都可以隐藏Input元素,但是input有更简单的方法。
如下代码:
<input type="hide" value="val" id="inputid" />
这样子就够了!!
是不是特别简单,所以在仅仅需要很简单的信息的时候,隐藏起来用这个就可以了。