Открытие Shadowbox из функции JavaScript
Я пытаюсь открыть Shadowbox из события onclick переключателя на веб-форме asp.net, но безуспешно. Первоначально я открывал его с помощью нажатия кнопки, который работал нормально, но теперь нужно убедиться, что это происходит, когда выбран переключатель. Затем я попытался нажать кнопку в javascript (button.click()), но это работало только в IE и более новых версиях firefox. Поэтому я решил использовать Shadowbox.open, но это вызывает некоторые проблемы. Вот мой код:
if (yes.checked == true)
{
var url = 'http://localhost:52963/items.aspx';
Shadowbox.open( { content: url,
type: "iframe",
title: "sbTitle ",
options: { initialHeight:350,
initialWidth:450,
loadingImage:"loading.gif",
handleUnsupported: 'link'
}
});
}
Это только кажется, что вызывает оверлей, но не открывает веб-страницу внутри него. Кто-нибудь знает, где я иду не так?
2 ответа
Видимо, мне нужно было добавить игрока, а также тип. Итак, исправленный код таков:
Shadowbox.open( { content: url,
type: "iframe",
player: "iframe",
title: "sbTitle ",
options: { initialHeight:350,
initialWidth:450,
loadingImage:"loading.gif",
handleUnsupported: 'link'
}
});
У меня было много проблем с этим, я пытался запустить клик, используя.trigger('click') из jquery, но это не сработало в chrome (работало в firefox)
Оказывается, ответ довольно прост, похож на электронный ответ, но набран вниз.
Ваши изображения в обычной галерее shadowbox
<div class="gallery">
<a href="/img1.jpg" rel="shadowbox[gallery1]" >
<img id="Image0" src="/img1.jpg" />
</a>
<a href="/img2.jpg" rel="shadowbox[gallery1]" >
<img id="Image1" src="/img2.jpg" />
</a>
</div>
Тогда ваша кликабельная ссылка
<a href="#" class="galleryLauncher" gallery="gallery1">Click to view all images</a>
Я подключил кликабельную ссылку через jquery в документе.
$('.galleryLauncher').click(function () {
//gallery to launch
var id = $(this).attr('gallery');
//get the first item out of the cache
var content = Shadowbox.cache[1].content;
//default options object
var options = {};
//now we can open it
Shadowbox.open({
content: content,
player: "img",
gallery: id,
options: options
});
return false;
});