Я пытаюсь реализовать код поляроида галереи this на моей веб-странице. На конкретном сайте я разместил код поляроидной галереи внутри a Slide Out Panel. Я получаю следующее сообщение об ошибке в консоли при поляроиде-галерее код помещается внутри выскользнуть панели:Javascript - переписать анонимную функцию для указанной функции
Uncaught TypeError: Cannot read property 'length' of undefined photostack.js:54
shuffleMArray photostack.js:325
moveItems photostack.js:390
Photostack._shuffle photostack.js:263
Photostack._showPhoto photostack.js:166
Photostack._open photostack.js:180
Photostack._initEvents photostack.js:130
Photostack._init photostack.js:99
Photostack (index):431
(anonymous function)
Я заметил, что я не получаю эту ошибку в консоли, когда поляроид-галерея код помещается снаружи Панель слайда. (все работает так, как ожидалось)
Я новичок, когда дело доходит до JavaScript, но я понял, что JS, который вызывает галерею polaroid, является анонимными функциями, которые создаются во время выполнения. Кажется, что эта анонимная функция не работает, когда галерея поляроидов находится внутри панели «Слайд-аут», поэтому я думаю, что мне как-то придется переписать анонимные функции на именованную функцию, чтобы получить код для запуска из выпадающего меню Панель. Пожалуйста, исправьте меня, если я ошибаюсь!
Это исходный код: (анонимные функции)
new Photostack(document.getElementById('photostack-3'), {
callback : function(item) {
console.log(item)
}
});
Это моя названа функция попытка: (не работает - мне нужна помощь!)
function Photostack()
{
document.getElementById('photostack-3'), {
callback : function(item) {
console.log(item)
}
}
Photostack();
Спасибо заранее!
Ну, самое первое, что нужно знать, это то, что если вы назовете * свою * функцию «Фотостак», вы * спрячете * имя библиотеки, которую вы пытаетесь использовать. – Pointy
Нет, использование названной функции vs unnamed не является вашей проблемой здесь. И ваша вторая попытка полностью пошла не так. – Bergi
Можете ли вы сделать jsfiddle того, что вы пытаетесь сделать? – forsvunnet