正直なところ、あなたにとって最も簡単な方法はCSSです。
ページはレスポンシブであるため、ウィンドウサイズごとに異なるCSSスタイルがすでに用意されています。クラスを追加して切り替えると、さまざまな値を簡単に設定できます。
CSSの場合:
/*
* if the device width is bigger or equal to 768,
* set the hover top property to 100px
*/
@media only screen and (min-device-width : 768px) {
.overlay.hover {
top: 100px;
}
}
/*
* if the device width is smaller or equal to 767
* set the hover top property to 75px
*/
@media only screen and (max-device-width : 767px) {
.overlay.hover {
top: 75px;
}
}
そして、残っているのはトグルクラスだけです!
jQuery('.container').hover( function() {
// Animate icon
jQuery(this).find('.overlay').stop().toggleClass('hover', 300).animate({
opacity: 1.0
}, 300);
}, function() {
// Hide icon
jQuery(this).find('.overlay').stop().toggleClass('hover', 300).animate({
opacity: 0.2
}, 300);
});
ただし、これが非常に手間がかかると思われる場合は(かなりきれいですが)、いつでもjavascriptで行うことができます。
var animatetop = getAnimateTop();
jQuery(window).resize(function() {
animatetop = getAnimateTop();
});
jQuery('#portfolio .project').hover( function() {
// Animate icon
jQuery(this).find('.overlay').stop().animate({
opacity: 1.0,
top: animatetop + 'px'
}, 300);
}, function() {
// Hide icon
jQuery(this).find('.overlay').stop().animate({
opacity: 0,
top:'155px'
}, 300);
});
function getAnimateTop() {
if(jQuery(this).width() >= 768) {
return 100;
} else {
return 75;
}
}