nextSibling.nodeName为#text ???

googleelgoog 2012-04-15 02:37:38
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html>

<head>
<script language="javascript">

function change(obj)
{
if(obj.innerText=="[-]")
{
obj.innerText="[+]";

//下面的alert我测试了下,当前对象的.parentNode.nextSibling.nodeName
//应该是ul,怎么弹出显示的是#text啊???
alert(obj.parentNode.nextSibling.nodeName);

next(obj.parentNode).style.display = "none";
}else{
obj.innerText="[-]";
next(obj.parentNode).style.display = "block";
}
}

function next(elem) {//获得下一个元素节点
do {
elem = elem.nextSibling;
} while (elem && elem.nodeType != 1);//nodetype=1是元素节点
return elem;
}

</script>
<link rel="stylesheet" type="text/css" href="css.css" />
</head>

<body>
<div>
<p><span onclick="change(this)">[-]</span>aaa</p>
<ul>
<li>aaaaaa</li>
<li>aaaaaa</li>
<li>aaaaaa</li>
</ul>
<p><span onclick="change(this)">[-]</span>bbb</p>
<ul>
<li>bbbbbb</li>
<li>bbbbbb</li>
<li>bbbbbb</li>
</ul>
<p><span onclick="change(this)">[-]</span>ccc</p>
<ul>
<li>cccccc</li>
<li>cccccc</li>
<li>cccccc</li>
</ul>
</div>
</body>

</html>

...全文
161 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
aihua17 2012-04-16
  • 打赏
  • 举报
回复
 function change(obj)
{
if(obj.innerText=="[-]")
{
obj.innerText="[+]";

//下面的alert我测试了下,当前对象的.parentNode.nextSibling.nodeName
//应该是ul,怎么弹出显示的是#text啊???
// alert(obj.parentNode.nextSibling.nodeName);
var test = obj.parentNode.nextSibling;
if(test.nodeName == "text"){
test = test.nextSibling;
}
alert(test.nodeName);

next(obj.parentNode).style.display = "none";
}else{
obj.innerText="[-]";
next(obj.parentNode).style.display = "block";
}
}
aihua17 2012-04-16
  • 打赏
  • 举报
回复
firefox等支持W3C规范的浏览器会把换行空白识别为一个NODE,你把中间的换行去掉就可以识别正确的,需要加一个判断
内容概要:本文系统阐述了基于线性与非线性状态空间模型预测控制(MPC)的四旋翼无人机轨迹跟踪对比仿真研究,包含完整的Simulink仿真模型、详细的技术讲解与说明文档,属于硕士论文级别的复现阶段。研究围绕四旋翼飞行器的动力学建模展开,分别构建线性MPC与非线性MPC控制器,深入比较两者在复杂轨迹跟踪任务中的控制性能差异,重点评估其在轨迹精度、动态响应速度、系统稳定性及抗干扰能力等方面的表现。文中提供了从状态方程推导、约束条件设定、代价函数设计到仿真结果分析的全流程实现细节,有助于读者全面掌握MPC在高阶非线性系统中的应用机制与工程实现方法。; 适合人群:具备自动控制原理、现代控制理论(特别是状态空间方法)、非线性系统建模及MATLAB/Simulink仿真能力的研究生、科研人员,以及从事无人机飞控系统开发、先进控制算法研究的工程技术人员。; 使用场景及目标:① 学习并掌握线性与非线性MPC在四旋翼系统中的建模与控制器设计方法;② 对比分析两种MPC策略在实际轨迹跟踪中的性能优劣,理解其适用边界与局限性;③ 支持硕士论文复现、科研项目验证、控制算法优化与教学案例开发。; 阅读建议:建议结合所提供的完整仿真模型逐步操作,重点理解系统线性化处理方法、预测时域与控制时域的设置、状态与输入约束的处理机制,以及非线性MPC的实时优化求解过程。同时推荐配合经典控制理论教材与MPC专著进行延伸学习,以实现从理论推导到仿真验证的闭环掌握。

87,989

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧