这是在这个函数中表示无值的正确方法吗?
Is this the correct way to express no value in this function?
我有一个手风琴,它已经设置为打开到一个特定的面板通过附加这个字符串到URL ?panel=0
farfegnugen = jQuery.noConflict();
farfegnugen(document).ready(function($) {
var defaultPanel = parseInt(getParam('panel'));
farfegnugen("#st-accordion").accordion({
open: defaultPanel
});
function getParam(name) {
var query = location.search.substring(1);
if (query.length) {
var parts = query.split('&');
for (var i = 0; i < parts.length; i++) {
var pos = parts[i].indexOf('=');
if (parts[i].substring(0, pos) == name) {
return parts[i].substring(pos + 1);
}
}
} else if(query.length === undefined){
window.location.href = "#topOfPage";
}
return false;
}
});
然而,我注意到它在加载时稍微滚动到手风琴的主体,尽管没有选择特定的面板。为了修复这种行为,我认为添加这个else if
块将检查参数是否为空,如果是,我们将强制窗口滚动anchor
所在的位置。
<a id="topOfPage" href='#'></a>
所以else if(query.length === undefined)
不能工作,因为你什么也没说,是吗?P.S.我也试过null
,但没有成功!
尝试在控制台中运行location.search.substring(1).length
,您将看到问题所在。它等于0
,而不是undefined
。在您的情况下,您不需要else if
,您可以简单地使用else
相关文章:
- 你能把一个匿名方法(函数)动态地变成一个命名方法吗
- 显示警报后调用方法/函数
- 使用来自 json 对象的参数动态调用方法/函数
- 创建具有动态参数排列的方法/函数
- 如何从其他 jsp 调用方法/函数以包含在另一个 jsp 的 jstree 中
- Objective-C 方法/函数调用.(来自JavaScript示例)
- 如何在android phongap应用程序中从javascript调用本机android方法(函数),而无需使用web
- 如何测试函数是否调用了特定的方法/函数
- 处理setTimeout(javascript)中的对象方法函数调用
- 简单级别,在DOM中选择元素,优化,创建方法函数
- 在不使用eval的情况下在方法函数中传递固定参数
- jQuery.html()方法函数文字参数
- animate方法函数执行意外延迟
- 对象方法javascript中的方法/函数
- Javascript私有方法:函数表达式与函数声明
- Jquery的oop重写方法函数
- 如何为数组/对象创建方法/函数
- 是否有可能发送我的对象与方法(函数)从服务器到客户端
- Javascript可以调用Django方法/函数吗
- 访问Backbone.js中的Ratchet 2.0方法/函数