Javascript节点和函数使用
Javascript nodes and functions use
我有一个有四行的表,每行都有一个"id",每行内部都有一条文本链接。
我想将单击的链接的innerHTML更改为下一个链接innerHTML。
所以如果我有这个:
ONE
TWO
THREE
FOUR
例如,我点击两个,结果一定是:
ONE
THREE
TWO
FOUR
如下所示,我的代码已经更改了前两个链接的顺序,但如果我单击另一个链接,它也会更改顺序。
<html>
<head>
<script type="text/javascript">
function change()
{
var link = document.getElementsByTagName("a");
var i = 0;
var aux = link[i].innerHTML;
link[i].innerHTML = link[i+1].innerHTML;
link[i+1].innerHTML = aux;
}
</script>
</head>
<body>
<table border="1">
<tr id="1"><td><a href="#" onclick="change()">ONE</a></td></tr>
<tr id="2"><td><a href="#" onclick="change()">TWO</a></td></tr>
<tr id="3"><td><a href="#" onclick="change()">THREE</a></td></tr>
<tr id="4"><td><a href="#" onclick="change()">FOUR</a></td></tr>
</table>
</body>
</html>
我已经做了一整天了,我不知道还能做什么。我从Java和Javascript开始,所以数组、DOM和Javascript函数的使用对我来说是新的。
代码如何知道单击了哪个链接?如果你不告诉它,它就无法神奇地推断出来。
首先,删除所有id
属性。它们在这里毫无用处,只会导致混乱。
接下来,传递this
作为change
的第一个参数:onclick="change(this);"
和function change(link) {...}
。
现在,重写change
函数以找到更改link
的正确链接,并按照现在的方式进行交换。
祝你好运。
您似乎想做一些类似的事情:
<style type="text/css">
.shifter {
color: blue;
text-decoration: underline;
cursor: pointer;
}
</style>
<script>
function shiftRows(e) {
var el = e.target || e.srcElement;
var row, tbody;
if (el.tagName.toLowerCase() == 'span' && el.className == 'shifter') {
row = el.parentNode.parentNode;
tbody = row.parentNode;
if (row.rowIndex > 0) {
tbody.insertBefore(row, tbody.rows[row.rowIndex - 1]);
}
}
}
</script>
<table id="t0" onclick="shiftRows(event);">
<tr><td><span class="shifter">0</span>
<tr><td><span class="shifter">1</span>
<tr><td><span class="shifter">2</span>
<tr><td><span class="shifter">3</span>
</table>
相关文章:
- 如何从模块链中调用函数.导出到节点中
- 如何在动态创建的节点上绑定函数
- 如何检查DOM节点是否继承自构造函数
- 如何发送作为节点请求响应函数中的代码块的响应
- 从节点中的回调函数返回值
- 如何在节点模块中从命令行运行函数
- 以后添加的节点不会附加到 jQuery UI 函数
- 节点模块对象范围:在所有函数之间共享一个对象
- 节点.js子进程中的运行函数
- 节点 js 在启动时调用函数一次
- 节点JS中的函数调用
- “require”关键字在节点红色函数节点中不起作用
- 类型错误:对象不是函数+节点JS
- 如何从函数节点内部使变量全局.js
- 如何调用导出函数(节点.js/续集)
- 在执行完所有当前计划的回调后调用函数(节点)
- 异步阻塞从函数节点.js中的对象返回变量
- 类型错误:未定义不是函数节点JS
- “套接字”类型错误上缺少错误处理程序:任务不是函数 - 节点.js异步.js
- 链接异步函数节点.js蓝鸟猫皮