当我的列表显示时,我的列表的第一个元素位于正确的位置,但从第二个元素开始到结束,它们都出现在子弹下而不是它下面:/
如果您需要查看代码,请转到http://www.nsworld.org/development(点击美国)
我正在尝试找到解决此问题的方法,它只出现在IE8中,所有其他浏览器的一切都显示完美。
答案 0 :(得分:1)
关闭锚标记(以及列表项) - 它们只是被打开,但从未关闭:
"<li>"+"<a href='http://nsworld.org/'>"+"Foo"+""+""+"<br />"+"<br />"+
一般来说,这段代码需要大量重新编写。有很多不必要的连接,这会破坏这条线的易读性(以及它周围的那些)。
此外,
我会建议一些事情。首先,您将开始使用标准doctype
,例如<!DOCTYPE html>
,以便您在各种浏览器和版本中获得更一致的行为。
其次是关闭你的标签。我注意到这些列表项没有被关闭,因此任务留给浏览器确定后续列表项应该如何格式化。虽然这不是无效,但绝对不是我鼓励的做法。
最后是在JavaScript中避免冗长的字符串连接,例如:
switch (code) {
case "us":
x="<ul>"+
"<li>"+"<a href='http://nsworld.org/findings/How-does-it-all-Fit-Together/Capacities#!prettyPhoto[examples2]/2/'>"+"Envision Charlotte"+""+""+"<br />"+"<br />"+
"<li><a href='http://nsworld.org/findings/Building-New-Capacities-Emergence/Innovative-Societies#!prettyPhoto[examples2]/2/'>"+"US Open Government Initiative"+""+
"<li>"+"<a href='http://nsworld.org/findings/Building-New-Capacities-Emergence/Innovative-Societies#!prettyPhoto[examples2]/3/'>"+"Unreasonable Institute"+""+""+
"<li>"+"<a href='http://nsworld.org/findings/Building-New-Capacities-Emergence/Innovative-Societies#!prettyPhoto[examples2]/4/'>"+"FailFaire"+""+""+
"<li>"+"<a href='http://nsworld.org/findings/Building-New-Capacities-Emergence/Emergent-Solutions#!prettyPhoto[examples]/1/'>"+"Ushahidi-Haiti"+""+""+
"<li>"+"<a href='http://nsworld.org/findings/Building-New-Capacities-Emergence/Public-Organizations-as-Experimentation-Platforms#!prettyPhoto[examples2]/3/'>"+"Social Innovation Fund"+""+""+
"<li>"+"<a href='http://nsworld.org/findings/Building-New-Capacities-Resilience/Adaptive-Capacity#!prettyPhoto[examples2]/1/'>"+"Community and Regional Resiliency Institute (CARRI)"+""+""+
"<li>"+"<a href='http://nsworld.org/articles/community-resilience-taking-tangible-steps-towards-achieving-societal-resilience'>"+"Community Resilience: Taking Tangible Steps Towards Achieving Societal Resilience"+""+""+
"<li>"+"<a href='http://nsworld.org/discoveries/nurse-family-partnership-co-produces-results-us'>"+"Nurse-Family Partnership Co-Produces Results in the U.S."+""+""+
""
break;
您可以预先加载这些列表,异步下拉这些列表,或者将数据填充到某种JavaScript对象中。正如您所看到的,大量的字符串连接使代码变得非常难以理解,并为错误提供了更多机会。