javascript中关于DOM的代码示例及相关笔记
2014-11-13 18:02
405 查看
1.做一个编辑框,里面可以选择字体的颜色、字形、样式,代码如下:
<!DOCTYPE html>
<html>
<head>
<title>学习javascript代码</title>
</head>
<body>
<fieldset>
<legend>编辑区</legend>
<div>
<form>
字体颜色:
<select onchange="setFontColor(this)">
<option value="black">Dlack </option>
<option value="red">Red </option>
<option value="green">Green </option>
<option value="blue">Blue </option>
</select>
字体样式:
<select onchange="setFontStyle(this)">
<option value="bold">Bold </option>
<option value="italic">Italic </option>
<option value="underline">Underline </option>
<option value="comic sans ms">Comic Sans</option>
</select>
字体:
<select onchange="setFontFamily(this)">
<option value="serif">Serif </option>
<option value="sans-serif">Sans-serif</option>
<option value="monospace">Mono</option>
<option value="comic sans ms">Comic Sans</option>
</select>
</form>
</div>
<br>
<div id="editableText" contenteditable="true"
style="width:400;min-height:100px;border:2px #ccc dashed;">
</div>
</fieldset>
<script type="text/javascript">
function setFontColor(choice){
document.execCommand("forecolor",false,choice,value);
}
function setFontStyle(choice){
document.execCommand(choice,value,false,null);
}
function setFontFamily(choice){
document.execCommand("fontname",false,choice,value);
}
</script>
</body>
</html>
2.笔记:
document.getElementById('box').scrollIntoView(); //使box标签标记的位置始终处于可见位置,这里是每刷新就会让指定位置可见
var box=document.getElementById('box');
box.children.length; //忽略空白节点
box.children[0].nodeName; //获取第一个节点
例题:实现跨浏览器判断一个节点是否是另一节点的字节点(可是兼容更低版本的)
window.onload=function(){
var box=document.getElementById('box');
var p=box.firstChild;
//alert(box.contains(p));
alert(contain(box,p));
}
function contain(reNode,otherNode){
if(typeof reNode.contains !='undefined'){
return reNode.contains(otherNode);
}
else if(typeof reNode.compareDocumentPosition==='function'){
return !!(reNode.compareDocumentPosition(otherNode)>16);
}
else{
var node=otherNode.parentNode;
do{
if(node===reNode)
return true;
else{
node=node.parentNode;
}
}while(node!=null);
}
return false;
}
例题:跨浏览器获取文本内容,兼容各大浏览器
window.onload=function(){
var box=document.getElementById('box');
alert(mytext(box));
}
function mytext(node){
if(typeof node.textContent=='string')
return node.textContent;
else
return node.innerText;
}
<!DOCTYPE html>
<html>
<head>
<title>学习javascript代码</title>
</head>
<body>
<fieldset>
<legend>编辑区</legend>
<div>
<form>
字体颜色:
<select onchange="setFontColor(this)">
<option value="black">Dlack </option>
<option value="red">Red </option>
<option value="green">Green </option>
<option value="blue">Blue </option>
</select>
字体样式:
<select onchange="setFontStyle(this)">
<option value="bold">Bold </option>
<option value="italic">Italic </option>
<option value="underline">Underline </option>
<option value="comic sans ms">Comic Sans</option>
</select>
字体:
<select onchange="setFontFamily(this)">
<option value="serif">Serif </option>
<option value="sans-serif">Sans-serif</option>
<option value="monospace">Mono</option>
<option value="comic sans ms">Comic Sans</option>
</select>
</form>
</div>
<br>
<div id="editableText" contenteditable="true"
style="width:400;min-height:100px;border:2px #ccc dashed;">
</div>
</fieldset>
<script type="text/javascript">
function setFontColor(choice){
document.execCommand("forecolor",false,choice,value);
}
function setFontStyle(choice){
document.execCommand(choice,value,false,null);
}
function setFontFamily(choice){
document.execCommand("fontname",false,choice,value);
}
</script>
</body>
</html>
2.笔记:
document.getElementById('box').scrollIntoView(); //使box标签标记的位置始终处于可见位置,这里是每刷新就会让指定位置可见
var box=document.getElementById('box');
box.children.length; //忽略空白节点
box.children[0].nodeName; //获取第一个节点
例题:实现跨浏览器判断一个节点是否是另一节点的字节点(可是兼容更低版本的)
window.onload=function(){
var box=document.getElementById('box');
var p=box.firstChild;
//alert(box.contains(p));
alert(contain(box,p));
}
function contain(reNode,otherNode){
if(typeof reNode.contains !='undefined'){
return reNode.contains(otherNode);
}
else if(typeof reNode.compareDocumentPosition==='function'){
return !!(reNode.compareDocumentPosition(otherNode)>16);
}
else{
var node=otherNode.parentNode;
do{
if(node===reNode)
return true;
else{
node=node.parentNode;
}
}while(node!=null);
}
return false;
}
例题:跨浏览器获取文本内容,兼容各大浏览器
window.onload=function(){
var box=document.getElementById('box');
alert(mytext(box));
}
function mytext(node){
if(typeof node.textContent=='string')
return node.textContent;
else
return node.innerText;
}
相关文章推荐
- javascript;Dom相关笔记
- JavaScript DOM编程 学习笔记-两个小示例
- QTP学习笔记之2.2 --Object Repository相关示例代码
- 学习笔记:javascript 关于DOM
- [翻译]javascript学习笔记 (六)-ajax相关
- 关于margin-left的示例代码
- 魔鬼字典 JavaScript 笔记 代码比较多乱第1/3页
- 业务需要,得到了两段正则表达式的代码,JAVASCRIPT的(关于车牌号码的校验问题)。
- 关于DCMS代码部署相关的build指令
- 日期选择示例javascript代码
- [翻译]javascript学习笔记 (二)-DOM
- 关于二级联动/三级联动下拉框的示例代码
- 拷贝网页内容增加版权信息的 JavaScript 代码示例
- 实现年月日下拉菜单的javascript代码示例~
- javascript关于复选框的实用脚本代码
- 关于WININET的异步使用的代码和一些相关知识
- javascript示例代码
- 关于二级联动/三级联动下拉框的示例代码
- 关于三级联动下拉框的示例代码
- Javascript里使用Dom操作Xml-asp.net入门笔记(十一)http://dev.csdn.net/article/78/78093.shtm