2012-03-12 4 views
0

У меня есть список изображений на: http://johanberntsson.se/dev/fotosida/Получить изображение, которое находится в центре экрана

Что бы быть хорошим способом, чтобы получить атрибут данных из Thats изображения в настоящее время в центре экрана? Поместите невидимую линию в центр экрана и посмотрите, с каким изображением она сталкивается? Или у вас есть другие предложения?

Надеюсь, у вас возникнет идея, в противном случае плохо развита.

Спасибо!

+0

Прохладный фотографии. Помогает ли это? http://stackoverflow.com/questions/8229291/how-to-check-if-an-element-is-in-the-view-of-the-user-with-jquery –

+0

@gdoron Я думаю, что он означает изображение который в настоящее время отображается при прокрутке –

+0

. Также http://stackoverflow.com/questions/2556168/how-to-detect-that-an-html-element-is-in-view –

ответ

0

Вы могли бы сделать что-то вроде этого:

// finding the center point of the screen 
// note that $(window).height() returns the height of the viewport 
var center = Math.floor(($(window).height()/2)) + $(window).scrollTop(); 

// looping through images and checking each for being in middle 
$('.mainimages').each(function(i, img) { 
    var top = $(img).offset().top; 
    if(top <= center && top + $(img).height() >= center) { 
     // $(img) is in the center 
    } 
}); 

Я не использую JQuery, так что я не уверен, если есть более эффективные методы, чтобы использовать, чтобы сделать это.

Кроме того, не то, что я не учитываю маржи/отступы между изображениями. Поэтому, если вы хотите сделать что-то вроде цветной рамки на центрированном изображении (без рамки на других), тогда будут моменты между изображениями, где изображение не будет иметь границы.

+0

Это именно то, что мне нужно. Я просто протяну это немного :) Спасибо Маршалл! – Johan

Смежные вопросы