每日记载内容总结13
1.css中list-style用法:
list-style 简写属性在一个声明中设置所有的列表属性。该属性是一个简写属性,涵盖了所有其他列表样式属性。由于它应用到所有 display 为 list-item 的元素,所以在普通的 HTML 和 XHTML 中只能用于 li 元素,不过实际上它可以应用到任何元素,并由 list-item 元素继承。
可以按顺序设置如下属性: list-style-type list-style-position list-style-image 可以不设置其中的某个值,比如 "list-style:circle inside;" 也是允许的,也可以值设置其中的一个值或者两个值。未设置的属性会使用其默认值。 <html> <head> <style type="text/css"> ul { list-style: square inside url('/i/eg_arrow.gif') } </style> </head>
2.ul下li的点击事件,获取li里面的value值和li的文本值
<ul> <li value="111" id="test">aaa</li> <li value="222">webbb</li> <li value="333">ccc</li> <li value="444">ddd</li> </ul>
jquery方法:
$("#test").click(function(){ alert($("#test").text()); 或者alert($(this).text()); //获取li的文本值 alert(this.value);//获取li的value值 });
js实现获取li里面的文本值:用innerHTML
<ul id="parent"> <li>a</li> <li>b</li> <li>c</li> </ul>
function ons(){ var ul = document.getElementById('parent');//先用id获取ul,然后再获取li,缩小getElementsByTagName的范围 var lis = ul.getElementsByTagName('li'); for(var i=0;i<lis.length;i++){ lis[i].onclick = function(){ alert(this.innerHTML); } }
3.createElement介绍
appendChild() 方法和insertBefore() 方法的描述和区别
<html> <head> <style type="text/css"> p{ color: red ; } </style> </head> <body> <div id="div1"> <p id="p1">1.基本操作:添加一个段落</p> <p id="p2">2.添加select标签</p><br> <p id="p3">3.添加input,使用setAttribute给属性赋值</p><br> <div id="div2"> <p>test insertBefore</p> <p id="p4">4.appendChild() 方法和insertBefore() 方法的不同 appendChild() 方法在节点的子节点列表末添加新的子节点。 insertBefore() 方法在节点的子节点列表任意位置插入新的节点。 replaceChild 第一个参数是要插入的节点,第二个参数要替换的节点. </p> <p id="p5">深入理解insertBefore的任意位置插入 var oTest = document.getElementById("test");<br> var refChild = document.getElementById("x1");<br> var newNode = document.createElement("p");<br> newNode.innerHTML = "This is a test";<br> (1)oTest.insertBefore(newNode,refChild);在refChild前插入<br> (2)oTest.insertBefore(newNode,refChild.nextSibling);在refChild的下一个节点前插入<br> (3)oTest.insertBefore(newNode,oTest.childNodes[0]); 在第一个子节点前面插入节点,改变数字,改变位置。<br> </p> </div> </div> <script> var para=document.createElement("p"); para.style.color = "black"; var node=document.createTextNode("这是新段落。"); para.appendChild(node); var elementp1=document.getElementById("p1"); elementp1.appendChild(para); var elementp2=document.getElementById("p2"); var selectjs = document.createElement("select"); selectjs.options[0]= new Option("select one",""); selectjs.options[1]= new Option("select two",""); selectjs.size = "2" ; selectjs.style.width = "200px"; elementp2.appendChild(selectjs); var elementp3=document.getElementById("p3"); var inputjs = document.createElement("input"); inputjs.setAttribute("type", "text"); inputjs.setAttribute("name", "q"); inputjs.setAttribute("value", " 请点击"); inputjs.setAttribute("onclick", "javascript:alert('This is a test!');"); elementp3.appendChild(inputjs); var elementdiv2=document.getElementById("div2"); var elementp4=document.getElementById("p4"); var newNode = document.createElement("p"); newNode.style.color = "black"; newNode.innerHTML = "I am before 4 ,add by insertBefore"; elementdiv2.insertBefore(newNode,elementp4); var newNode2 = document.createElement("p"); newNode2.style.color = "black"; newNode2.innerHTML = "I am add to the end ,add by appendChild"; elementdiv2.appendChild(newNode2); </script> </body> </html>
4.JS获取元素的一些属性(转)
clientWidth //获取元素的宽度 clientHeight //元素的高度 offsetLeft //元素相对于父元素的left offsetTop //元素相对于父元素的top offsetWidth //元素的宽度 offsetHeight //元素的高度 区别: clientWidth=width+padding clientHeight=height+padding offsetWidth=width+padding+border offsetHeight=width+padding+border scrollLeft //元素最左端到窗口最左端的距离 scrollTop //元素最顶端到窗口最顶端的距离 scrollWidth //元素的滚动宽度 scrollHeight //元素的滚动高度 //获取元素的纵坐标 function getTop(e){ var offset=e.offsetTop; if(e.offsetParent!=null) offset+=getTop(e.offsetParent); return offset; } //获取元素的横坐标 function getLeft(e){ var offset=e.offsetLeft; if(e.offsetParent!=null) offset+=getLeft(e.offsetParent); return offset; }
关于e.offsetParent在table中的解释为下:
在td中的元素会把第一个绝对/相对定位的hierarchy parent当作offsetParent,如果没有找到需要分三种情况讨论
一,如果该元素没有绝对/相对定位,则会把td当作offsetParent
二,如果该元素绝对/相对定位并且table没有绝对/相对定位,则会把body当作offsetParent
三,如果该元素绝对/相对定位并且table绝对/相对定位,则会把table当作offsetParent
原文链接 :http://www.cnblogs.com/Godblessyou/archive/2007/12/24/1012920.html
5.详细描述在js中创建select标签以及添加元素等操作:
<html> <head> <style type="text/css" > </style> <script type="text/javascript" src="jquery.min.js"></script> <script language="javascript"> function number(){ var obj = document.getElementById("mySelect"); //obj.options.length = 0 ;清空select标签中的option alert(obj.selectedIndex); //alert(obj.options[obj.selectedIndex].value);获取选中的option的value //alert(obj.options[obj.selectedIndex].text);获取选中的option的text //alert(obj.options[1].selected ) ; //obj.options[obj.selectedIndex] = new Option("我的吃吃","4");//在当前选中的那个的值中改变 //obj.options.add(new Option("我的吃吃","4"));再添加一个option //alert(obj.selectedIndex);//显示序号,option自己设置的 //obj.options[obj.selectedIndex].text = "我的吃吃";更改值 //obj.remove(obj.selectedIndex);删除功能 } </script> </head> <body> <select id="mySelect"> <option value="111">我的包包</option> <option value="222">我的本本</option> <option value="333">我的油油</option> <option value="444">我的担子</option> </select> <input type="button" name="button" value="查看结果" onclick="number();"> </body> </html>