页面选择脚本不起作用
Page selection script dont work
我的网站不想显示这个脚本。当我把它放在索引页上时,它会显示出来,但当我把他放在其他页面上时,什么都没发生
<div id="pages"></div>
<script>
a = location.href;
b = a.split('-');
c = b.length;
d = eval(c - 1);
e = b[d];
f = a.split('-' + e)[0];
$('#pages').html('<a id="b" href="' + f + '-' + eval(e - 1) + '">Previous' +
'</a><span id="i"> | </span><a id="a" href="' + f + '-' + eval(e * 1 + 1) + '">Next</a>');
$.ajax({
type: 'GET',
url: f + '-' + eval(e * 1 + 1),
error: function(){
$('#a, #i').hide();
}
});
$.ajax({
type: 'GET',
url: f + '-' + eval(e - 1),
error: function(){
$('#b, #i').hide();
}
});
</script>
有人能帮忙吗?
我认为代码中最重要的错误是读起来一团糟,写起来也一团糟。以下是一些解决您问题的建议:
- 删除所有
eval
黑客 - 命名你的变量,使它们有意义
- 行数越多并不意味着更好,确保每一条指令都是必要的
- 把你的脚本放在标题中,这样更容易阅读
- 正如Subhash所指出的,确保在元素存在之前,您不会访问它们
这应该能自己解决你的问题。如果没有,请用更人性化的代码更新您的问题,我很乐意对此进行调查:-)
"调试的难度是最初编写代码的两倍。因此,如果你尽可能聪明地编写代码,那么从定义上讲,你还不够聪明,无法调试它。"–Brian Kernighan
好吧,为了首先解决让链接显示的问题,我的第一种方法是验证脚本不起作用的页面是否包含必要的元素(在本例中,是一个id标记为"pages"的元素)。
然后,我会让脚本只在文档的其余部分完成加载后运行。请参阅此了解更多详细信息。
如果你仍然遇到问题,我接下来要做的就是在Chrome或Firefox中打开它,并开始使用DOM检查器和Javascript调试器来"查看"代码运行时到底发生了什么。它足够短,不会太乏味,在我看来这是最好的学习方式之一。
除此之外,我真的不能提供太多。你没有给我足够的信息,至少我不知道你可能有什么问题。如果你能自己缩小问题的范围,我们也许能更好地帮助你。
相关文章:
- 当有许多形式时,Fancybox脚本不起作用
- Aureliaview中的脚本不起作用
- JQuery脚本在IE中不起作用
- 淡入淡出脚本不起作用
- 未捕获的类型错误:无法设置属性'innerHTML'如果为null,则将脚本移动到正文不会;不起作用
- jQuery脚本在googlechrome中不起作用
- 替换字符串的脚本;在某些网站上不起作用
- 从jquery对话框恢复原始数据,脚本不起作用
- java脚本中的谷歌地图在第二次点击时不起作用
- 我的脚本不起作用
- JavaScript onScroll在谷歌应用程序脚本web应用程序中不起作用
- 为什么锚在此脚本中不起作用
- getRange(单元格)在谷歌应用程序脚本中不起作用
- 脚本在我的引导模式中不起作用
- 用于wooccommerce的简单JQuery脚本不起作用
- 对照数组脚本检查文本框中的值不起作用
- 脚本在IE 9中不起作用
- 如果视图中没有Jquery脚本引用,Unobtrusive Javascript Validation是不起作用的
- Codeigniter :通过 AJAX 调用 php 脚本时路由不起作用
- 谷歌转化不起作用 - 脚本无法加载