jsday06补充(字体大中小 结合css和js 列表list 只显示单个 和缩放)
来源:互联网 发布:网上上课的软件 编辑:程序博客网 时间:2024/05/16 16:05
<script type="text/javascript" src="doctool.js"></script><script type="text/javascript">function changeMax(){ var divNode = document.getElementById("newid"); divNode.style.fontSize="20px"; //alert("xx"); }function changeMid(){ var divNode = document.getElementById("newid"); divNode.style.fontSize="16px"; //alert("xx"); }function changeMin(){ var divNode = document.getElementById("newid"); divNode.style.fontSize="9px"; //alert("xx"); }function changeSize(size){ //var divNode = document.getElementById("newid"); var divNode=byId("newid"); //divNode.style.fontSize=size; //alert("xx"); }function changeSize1(className){ //var divNode = document.getElementById("newid"); var divNode=byId("newid"); divNode.className=className; }</script><style type="text/css">div,.norm{ background-color:#F00; color:#C03; font-size:16px; width:300px;}.max{ background-color:#066; color:#FF0; font-size:24px;}.min{ background-color:#390; color:#6F3; font-size:9px;}</style></head><body><!--1、定义数据封装的标签 (定义界面)2、确定事件源3、注册事件4、事件处理例子页面中有一个新闻区域通过超链接 大中小可以让用户改变区域中的字体大小 --> <!--js用来取消超链接效果--> <h2>新闻标题</h2> <a href="javascript:void(0)" onclick="changeSize1('max')" >大</a> <a href="javascript:void(0)" onclick="changeSize1('norm')" >中</a> <a href="javascript:void(0)" onclick="changeSize1('min')" >小</a><br/> <div id="newid" > 的方式发到所发生的<br/> 的方式发到所发生的<br/> 的方式发到所发生的<br/> 的方式发到所发生的<br/> </div></body>
doctool
// JavaScript Documentvar doc = document;function byId(id){ return doc.getElementById(id);}
注意方法的名字 和打开时的大小 不然可能叠在一起
<script type="text/javascript" src="doctool.js"></script><script type="text/javascript">var b= true;function change(){ //var divNode = document.getElementsByTagName("div")[0]; var divNode = byTag("div")[0]; //alert(divNode.nodeName); /*if(b) { divNode.style.height="8px"; divNode.style.overflow="hidden"; b=false; } else { divNode.style.height="8px"; divNode.style.overflow="visible"; b=true; }*/ if(divNode.className=="close")/*如何判断类选择器*/ { divNode.className="open"; } else { divNode.className="close"; }}function list(dtNode){ //var dtNode = byTag("dt")[0]; //var dlNode = byTag("dl")[0]; //var dtNode = event.srcElement; var dlNode = dtNode.parentNode; //alert(dtNode.nodeName); //alert(dtNode.nodeName+"..."+dlNode.nodeName); if(dlNode.className=="open") { dlNode.className="close"; } else { dlNode.className="open"; }}function list1(dtNode){ var dlNode = dtNode.parentNode; var dlNodes = byTag("dl"); alert(dlNodes.length); for(var x= 0;x<dlNodes.length;x++) { if(dlNodes[x]==dlNode) { if(dlNode.className=="open") { dlNode.className= "close"; } else { dlNode.className= "open"; } } else dlNodes[x].className= "close"; }}/*获取事件源对象的两种方式1、通过event 对象的srcElement属性2、将事件源对象通过this传入*/</script><style type="text/css">.open{ overflow:visible; height:80px;}.close{ overflow:hidden; height:16px; }dl{ overflow:hidden; height:16px}</style></head><!-- 通过点击实现一个展开闭合的效果<div onclick="change()">感到十分广泛大锅饭隧道股份董事</div>--><body> <dl><dt onclick="list1(this)" >上层项目</dt><dd>fdfdfdsfdkohbjkvnbifj</dd><dd>fdfdfdsfdkohbjkvnbifj</dd><dd>fdfdfdsfdkohbjkvnbifj</dd></dl><dl><dt onclick="list1(this)" >上层项目</dt><dd>fdfdfdsfdkohbjkvnbifj</dd><dd>fdfdfdsfdkohbjkvnbifj</dd><dd>fdfdfdsfdkohbjkvnbifj</dd></dl><dl><dt onclick="list1(this)" >上层项目</dt><dd>fdfdfdsfdkohbjkvnbifj</dd><dd>fdfdfdsfdkohbjkvnbifj</dd><dd>fdfdfdsfdkohbjkvnbifj</dd></dl><dl><dt onclick="list1(this)" >上层项目</dt><dd>fdfdfdsfdkohbjkvnbifj</dd><dd>fdfdfdsfdkohbjkvnbifj</dd><dd>fdfdfdsfdkohbjkvnbifj</dd></dl></body>
只能打开第三个 而且不能缩放 有bug for循环里面的else 应该选择关闭其他的只保留当前的 不然 会出现仅最后一个能开 而且不能再缩放 即用nodes[x] 代替node 可解决
<script type="text/javascript">function list(){ var aNode = event.srcElement; //alert(aNode.nodeName); var tdNode = aNode.parentNode; //alert(tdNode.nodeName); var divNode= tdNode.getElementsByTagName("div")[0]; //alert(divNode.nodeName); var tabNode = document.getElementsByTagName("table")[0]; var divNodes = tabNode.getElementsByTagName("div"); //alert(divNodes.length); for(var x=0; x<divNodes.length;x++) { if(divNodes[x]==divNode) { if(divNode.className=="open") { divNode.className="close"; } else { divNode.className="open"; } } else { divNodes[x].className="close"; } } //alert(tdNode.nodeName); }</script><style type="text/css">table{ background-color:#0C6 1px solid; }table td{ border:#F00 1px solid; background-color:#0FC; }table td div{ background-color:#9F3; display:none;}table td a:link,table td a:visited{ color:#C00; text-decoration:none} .open{display:block;}.close{display:none;} </style></head><body><table> <tr> <td><a href="javascript:void(0)" onclick="list()">好友菜单</a> <div> 反倒是多少<br/> 反倒是多少<br/> 反倒是多少<br/> 反倒是多少<br/> </div> </td> </tr> <tr> <td><a href="javascript:void(0)" onclick="list()">好友菜单</a> <div> 反倒是多少<br/> 反倒是多少<br/> 反倒是多少<br/> 反倒是多少<br/> </div> </td> </tr> <tr> <td><a href="javascript:void(0)" onclick="list()">好友菜单</a> <div> 反倒是多少<br/> 反倒是多少<br/> 反倒是多少<br/> 反倒是多少<br/> </div> </td> </tr></table></body>
阅读全文
0 0
- jsday06补充(字体大中小 结合css和js 列表list 只显示单个 和缩放)
- 字体显示大中小
- 字体大中小代码&字号缩放代码
- android-结合MENU和List显示
- CSS和JS结合控制样式
- CSS列表属性list-style-type 和 list-style-image
- CSS学习03-字体、文本、背景和列表设置
- js小技巧 实现字体大中小的另一种方法
- 用js实现图的缩放和拖动显示,
- CSS文本和字体
- css文本和字体
- 用css样式和脚本js结合打开链接
- .jqGrid必备的js和css文件 字体变大
- JS和HTML结合
- opengl 图像缩放和只画线
- Javascript字体特效--字体大中小
- CSS补充-列表属性
- 让wordpress首页和分类列表页只显示文章标题列表
- Class.forName的作用?为什么要用?
- SQL 本地连接IP地址修改
- hdu 2159 二维费用背包
- C++ 类的大小 struct/class内存对齐问题
- 集合框架--实用类
- jsday06补充(字体大中小 结合css和js 列表list 只显示单个 和缩放)
- 苹果分享 ARKit 应用人机界面设计指南
- 删除重复的候选框( python 版本)
- java递归
- C++多线程——_beginthread()和_beginthreadex
- 欢迎使用CSDN-markdown编辑器
- 数据库存储方法
- EM算法
- Grid