JQuery采纳CSS实现DOM显示和隐藏要素
今天参加了Code Review活动。阅读编写代码的同事,感到满足当前功能的实现,但是从长远来看,,无论角度还是从代码重用是来看显然不佳维修点。
有什么需要看的权利。通过选择不同的选项下拉框需求,为了显示和隐藏的文本框。他的同事说:
Code 1
<select name="select" onChange="disinput(this)">
<option value="1">1</option>
<option value="2">2</option>
</select>
<input type="text" id="text" name="text" style="" value="" /> <script type="text/javascript">
function disinput(obj){
if(obj.value==2){
document.getElementById("text").style.display="none";
}else{document.getElementById("text").style.display="";}
}
</script>
这样的写法应该是全部JS刚開始学习的人都习惯的思维。依据需求写一个方法实现功能就可以。但我认为假设在另外一个页面也有类似的需求,那么是不是又要把这种方法重写一遍呢,哪一天假设用户要求选择选项1就在文本框中显示XX内容,选择2显示另外的内容,那是不是全部的页面都要又一次改一遍,能不能有更好的方法。这个时候能够考虑用CSS,当然是外部CSS,这里我写了一个样例是将CSS放在页面文件里了,假设实际操作肯定是放在外部CSS其中。
Code 2
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript"> $(function () {
}); function changeSel() {
if ($("#select1").val() == 2) {
$("#text").addClass("class2");
} else {
$("#text").removeClass("class2");
}
}
</script>
<style type="text/css">
.class2
{
display:none;
}
</style>
</head>
<body>
<select id="select1" name="select" onChange="changeSel()">
<option value="1">1</option>
<option value="2">2</option>
</select>
<input type="text" id="text" name="text" style="" value="" />
</body>
</html>
Code 2该代码更简洁,更重要的是,它是一个很好的实现代码重用。和未来的可维护性。我建议你写代码的时候多从重用性和可维护性上去考虑实现。
JQuery采纳CSS实现DOM显示和隐藏要素的更多相关文章
- css控制div显示/隐藏方法及2种方法比较原码 - czf164的专栏 - 博客频道 - CSDN.NET
body{ font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI& ...
- jQuery改变CSS使DIV显示
HTML: <div id="mazey" style="display:none;">www.mazey.net</div> jQue ...
- CSS元素的显示与隐藏
CSS元素的显示与隐藏 我们访问某些网站的时候,经常可以看到一些广告弹出来,点击关闭就不见了,但是重新刷新页面后,广告又会重新弹出来.这就是元素的显示和隐藏的一个应用. 1. display属性 di ...
- [CSS]元素的显示与隐藏
摘自:http://www.zhangxinxu.com/wordpress/?p=1528 元素隐藏与显示是我们在页面制作与交互效果实现中非常常见的,如果您只是使用display:none与disp ...
- css中实现显示和隐藏(转)
CSS中的display和visibility 在平时的开发过程中,总是会遇到一些文字在特定的场景下显示或者隐藏来达到我们想要的效果,css中display和visibility语法,他们都 ...
- CSS——元素的显示与隐藏
元素的显示与隐藏 在CSS中有三个显示和隐藏的单词比较常见,我们要区分开,他们分别是 display visibility 和 overflow. 他们的主要目的是让一个元素在页面中消失,但是不在文档 ...
- JQuery完整验证&密码的显示与隐藏&验证码
HTML <link href="bootstrap.css" rel="stylesheet"> <link href="gloa ...
- Jquery 实现密码框的显示与隐藏【转载自http://blog.csdn.net/fengzhishangsky/article/details/11809069】
<html> <head> <script type="text/JavaScript" src="jQuery-1.5.1.min.j ...
- CSS检测窗口大小显示和隐藏内容
代码不多 用css写的话简单一点 @media (max-width: 1024px) { #hidden { display: none; } } max-width 是要检测的宽度
随机推荐
- mybatis逆向工程随笔
mybatis框架简介和简单原理: mybatis本来是apache的一个开源的项目,后来迁移到了google,并且改名为mybatis. mybatis框架优点: 1.mybatis是最简单的持久化 ...
- win32 ag + xargs
需要使用-0 d:\Apps\AutoHotkey\scripts>ag 2b89eaa_r13_ad1 -l -0|xargs -0 sed -i s/2b89eaa_r13_ad1/2b89 ...
- Perl自动释放Licence启动Verdi
Perl自动释放Licence启动Verdi 在工作中,遇到verdi的License不够的情况,某些人占用了多个License,为及时获得一个可用的License,写了一个perl来kill运行时间 ...
- [Angular] Test component template
Component: import { Component, Input, ChangeDetectionStrategy, EventEmitter, Output } from '@angular ...
- php实现 简单密码(代码颜色变化)
php实现 简单密码(代码颜色变化) 一.总结 一句话总结:写代码的时候一定要关注代码的颜色变化,不然低级错误害死人.常量变量会有不同颜色,所以$str少$符号变成常量的时候很容易发现. 1.变量$ ...
- [Postgre] Insert Data into Postgre Tables
// Insert one row INSERT INTO movies (title, release_date, count_stars, director_id) VALUES ( 'Kill ...
- Hudson版本控制 (备注)
http://www.ttlsa.com/tools/install-hudson-on-linux/
- oracle2c-r2(12.2.0.1) 的镜像
docker- 构建 oracle2c-r2(12.2.0.1) 的镜像 需求 由于公司的数据库需要使用新的oracle版本(12c-r2 -->12.2.0.1),从之前的oracle11 ...
- js获取input file路径改变图像地址
版权声明:好歹是我写的或者总结的或者抄的,总待给我个名份吧~ https://blog.csdn.net/sangjinchao/article/details/52250318 html代码 < ...
- Role-based access control modeling and auditing system
A role-based access control (RBAC) modeling and auditing system is described that enables a user to ...