有没有人可以解救一下我啊??项目描述:关于js的问题,我在一id为AreaID的div里面动态生成n个a标签,每个a标签带有事件,其事件的作用是使得点击此a标签时a则更换css样式(即换className),同时使得其本div下的其他所有a标签的className统一改变。问题描述:
当点击div里面动态生成的任一a标签时,其className瞬间会变,但是马上双变回去了,即没有达到我要的改变css效果。
动态生成a标签,我分别用innerHTML、creatElement,问题还是一样。//html的div<div id="divID"></div>//批量处理a样式的函数
function SelectOption(DivID,EventSrc){
//DivID是指如上如指的div的id变量
//EventSrc是指向a标签本身,传参过来时是用了this关键字
var div = document.getElementById(DivID);
var as = div.getElementsByTagName("a");
for(var i=0;i<as.length;i++){
as[i].className="";
}
EventSrc.className="BoldACss";
}//动态生成的a标签的点击事件
function xxx()
{
var aArr = new Array();
for(var i=0;i<10;i++){
var a=document.createElement("a");
a.setAttribute("href","javascript:void(0);");
a.setAttribute("onclick","SelectOption('divID',this");
aArr[i] = document.getElementById("divID").appendChild(a);
aT= document.createTextNode("链接词");
aArr[i].appendChild(aT);
}
}
当点击div里面动态生成的任一a标签时,其className瞬间会变,但是马上双变回去了,即没有达到我要的改变css效果。
动态生成a标签,我分别用innerHTML、creatElement,问题还是一样。//html的div<div id="divID"></div>//批量处理a样式的函数
function SelectOption(DivID,EventSrc){
//DivID是指如上如指的div的id变量
//EventSrc是指向a标签本身,传参过来时是用了this关键字
var div = document.getElementById(DivID);
var as = div.getElementsByTagName("a");
for(var i=0;i<as.length;i++){
as[i].className="";
}
EventSrc.className="BoldACss";
}//动态生成的a标签的点击事件
function xxx()
{
var aArr = new Array();
for(var i=0;i<10;i++){
var a=document.createElement("a");
a.setAttribute("href","javascript:void(0);");
a.setAttribute("onclick","SelectOption('divID',this");
aArr[i] = document.getElementById("divID").appendChild(a);
aT= document.createTextNode("链接词");
aArr[i].appendChild(aT);
}
}
解决方案 »
- 求大神解释一下js代码!
- js 时间格式调试方面的错误,求分析解答
- jq $.post 要怎么才可以跨域
- 如何改变动态创建的文字链接新窗口的标题?
- <a href="#MiaoDian1" ID="hrefValue" name="hrefValue">查看</a> 怎么用javascript 代替单击?
- 只有确定按钮的对话框,按确定返回当前页面
- 一个 asp 页面 包含了一个 js文件,js有动态查询数据库的内容,为什么就运行不出内容来呢
- 高分求高手!!!
- 求一个不用marquee的横向滚动JS代码,急!
- Help.浏览器窗口的宽度,谢谢各位大虾
- 求教,如何使用自己编写的浏览器插件(.so格式),分不够再加
- 谁有《javascript高级程序设计第2版》pdf 非扫描
a.setAttribute("onclick","SelectOption('divID',this");
改成
a.setAttribute("onclick","SelectOption('divID',this)");
{
var aArr = new Array();
for(var i=0;i<10;i++){
var a=document.createElement("a");
a.setAttribute("href","javascript:void(0);");
a.setAttribute("onclick","SelectOption('divID',this");
aArr[i] = document.getElementById("divID").appendChild(a);
aT= document.createTextNode("链接词");
aArr[i].appendChild(aT);
}
}
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script src="../jquery/jquery-1.5.2.min.js" type="text/javascript"></script>
<style type="text/css">
.BoldACss { font-weight: bold; }
A { margin: 10px; text-decoration: underline; }
</style>
<script type="text/javascript"> $(document).ready(function () { var divID = $("#divID");
function createA() {
//创建A标记
for (var i = 0; i < 10; i++) {
divID.append($("<a href='javascript:void(0)' >链接词</a>"));
}
var arrA = divID.find("a");
//绑定事件
arrA.click(function () {
//移除所有A的样式
arrA.removeClass();
//当前点击的加上样式
$(this).addClass("BoldACss");
});
}
createA(); });
</script>
</head>
<body>
<div id="divID">
</div>
</body>
</html>