Проблемы с jQuery и "hash"? - PullRequest
       22

Проблемы с jQuery и "hash"?

3 голосов
/ 24 февраля 2012

У меня проблемы с использованием 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: []
        });

Ооо ... Консоль (Google Chrome) говорит:

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')

Ответы [ 2 ]

2 голосов
/ 03 марта 2012

Убедитесь, что при использовании jQTouch с jQuery вы загружаете базовый JQT вместе с файлом моста JQT jQuery (странно - плагин изначально был запущен для работы с jQuery, теперь для его работы требуется отдельный скрипт надстройки). вместо Zepto.js)

Также - эта ошибка возникает при загрузке страницы? Это статическая HTML-страница, для которой вы используете JQTouch, или она динамически создается с использованием PHP, .NET и т. Д.

0 голосов
/ 27 февраля 2012

Это потому, что хеш находится в window.location.

Вы можете просто сделать:

var hash = location.hash.replace(/^#/, '')

...