См. http://jsfiddle.net/rabelais/DW5CV/15/Воспроизведение видео, когда видео отображается, когда видео скрыто, оно приостанавливается?
Здесь есть своего рода слайд-шоу из художественной работы, которая содержит divs с изображениями и видео. Когда пользователь нажимает на полноэкранное изображение или видео, он скрывает и показывает следующий в строке, и продолжает цикл. Видеоролики устанавливаются при автоматическом воспроизведении, однако я хочу, чтобы они автоматически воспроизводились, когда они отображаются, и пауза, когда они скрыты?
$(function() {
var win = $(window),
fullscreen = $('.full'),
image = fullscreen.find('img, video'),
imageWidth = image.width(),
imageHeight = image.height(),
imageRatio = imageWidth/imageHeight;
function resizeImage() {
var winWidth = win.width(),
winHeight = win.height(),
winRatio = winWidth/winHeight;
if (winRatio > imageRatio) {
image.css({
width: winWidth,
height: Math.round(winWidth/imageRatio)
});
} else {
image.css({
width: Math.round(winHeight * imageRatio),
height: winHeight
});
}
}
$('.full').click(function() {
$(this).hide();
if($(this).next('.full').length === 1)
$(this).next('.full').show();
else
$('.full').eq(0).show();
});
});
Спасибо за ваше решение и совет. – angela
Есть одна небольшая проблема, изображения и видео больше не отображаются в полноэкранном режиме. Есть ли способ решить это? – angela
Нет проблем. Похоже, ваша функция «resizeImage» работает. Его просто не называют нигде. Вы можете добавить его ('resizeImage()') внизу внутри функции самозапускания ('$ (function() {});') – RedGlobe