我使用jQTouch时遇到了一些问题。我有这个链接
<a href="#site_map" class="swap">Map</a>
和这个jQTouch初始化:
var jQT = new $.jQTouch({
icon: 'jqtouch.png',
icon4: 'jqtouch4.png',
addGlossToIcon: false,
startupScreen: 'jqt_startup.png',
preloadImages: []
});
Sooo ...控制台(谷歌浏览器)说:
Uncaught TypeError: Cannot read property 'hash' of undefined
Line 331, jQTouch.js...
有人有什么想法吗?
一些附加信息:
Firefox控制台:
hash is undefined
hash = hash.replace(/^#/, ''),
jqtouch.js (Zeile 431)
(432 out of range 4)
jquery.js (Zeile 432)
最后,Safari控制台:
TypeError: 'undefined' is not an object (evaluating 'hash.replace')
答案 0 :(得分:2)
确保你使用jQuery的jQTouch,你加载了基本JQT和JQT jQuery桥接文件(奇怪 - 插件最初是用jQuery开始的,现在需要一个单独的加载脚本来处理它而不是Zepto.js)
此外 - 页面加载时是否发生此错误?这是您正在使用JQTouch的静态HTML页面,还是使用PHP,.NET等动态创建的?
答案 1 :(得分:0)
那是因为hash在window.location上。
你可以这样做:
var hash = location.hash.replace(/^#/, '')