这样也是HTML DOM那部分的内容,javascript与jquery等前端脚本语言的核心就是要控制每一个节点,对每一个节点进行增删改查,这样才能够真正地活用javascript与jquery等前端脚本写出一个又一个华丽丽的东西。
点击增加按钮可以增加超级链接节点,其中每一个超级链接都带有中文参数你好1,你好2,你好3……,而且滚动条自动随节点的增加而滚动,向jqrec.html传递,这个你好x参数,jqrec.html页面能够获取到这个中文参数
jqrec.html全代码如下,所使用的函数,涉及到分析url地址的正则表达式,不用细究。真正作用的代码则只有,$("#rec").text(unescape(getUrlParam("text")));
jqrec
你点击的链接是:,这与浏览器上的get方法传过来的text参数完全相同~
text上传递的参数是中文来的哦,需要结果译码解码~
返回jqsend.html再试一次~
<script> <br />
/*此函数配合unescape函数能够对url上get方法传递过来的utf-8元素进行解码*/ <br />
function getUrlParam(name) <br />
{ <br />
var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)"); <br />
var r = window.location.search.substr(1).match(reg); <br />
if (r!=null) return unescape(r[2]); return null; <br />
} <br />
$(function() { <br />
$("#rec").text(unescape(getUrlParam("text"))); <br />
}); <br />
</script>
jqsend
<script> <br />
/*$(function(){});相当于$(document).ready(function (){});函数,一载入,就执行的主函数*/ <br />
$(function() { <br />
/*计数id*/ <br />
var id=0; <br />
/*add按钮点击事件*/ <br />
$("#add").click(function (){ <br />
id=id+1; <br />
var li="<li id=\"id" +id.toString()+ "\"><a>"; <br />
/*在testul列表中,增加如上所述的li节点*/ <br />
$("#testul").append(li); <br />
/*寻找新增的id为idx(其中x为计数器var id的值)的li节点下的a节点,并且把其中的元素修改为你好x,jquery里面的.html相当于javascript里面的innerHTML*/ <br />
$("#id"+id.toString()).find("a").html("你好"+id); <br />
/*设置此a元素的href属性为,jqrec.html=“你好”+id,由于链接中不可以带中文,所以用两次escape将其编码为utf-8编码,用一次会出现bug,后面的unescape获取不了,不知道为什么*/ <br />
$("#id"+id.toString()).find("a").attr("href","./jqrec.html?text="+escape(escape("你好"+id))); <br />
/*设置滚动条随着testul的所在高度滚动,这段代码在ie8以下会失效*/ <br />
$("body").scrollTop($("#testul").height()); <br />
}); <br />
/*clear按钮点击事件*/ <br />
$("#clear").click(function (){ <br />
/*把testul下面的所有元素清空,计数器清零*/ <br />
$("#testul").empty(); <br />
id=0; <br />
}); <br />
/*findmyfather行内文本点击事件*/ <br />
$("#findmyfather").click(function(){ <br />
/*this代表被按的findmyfather,取其上一级父节点的id*/ <br />
thisid=$(this).parents().attr("id"); <br />
alert("我的父节点是:"+thisid); <br />
/*这样可以往前寻找第一个div元素的id*/ <br />
thisid=$(this).parents("div").attr("id"); <br />
alert("我的第一个div父节点是:"+thisid); <br />
/*这样可以往前寻找第二个div元素的id*/ <br />
thisid=$(this).parents("div").parents("div").attr("id"); <br />
alert("我的第二个div父节点是:"+thisid); <br />
}); <br />
}); <br />
</script>