Files
2026-01-15 22:24:06 +03:00

50 lines
2.3 KiB
HTML
Executable File

<div id="global-back-to-top" class="back-to-top-btn" onclick="scrollToTop()"
style="position: fixed; bottom: 30px; right: 30px; background: rgba(255, 255, 255, 0.15); color: #ffffff; border: 1px solid rgba(255, 255, 255, 0.3); border-radius: 50%; width: 56px; height: 56px; cursor: pointer; font-size: 1.2rem; opacity: 0; visibility: hidden; z-index: 1000; display: flex; align-items: center; justify-content: center; box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2); backdrop-filter: blur(10px); text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.8); transition: all 0.3s ease;">
</div>
<script>
function scrollToTop() {
window.scrollTo({
top: 0,
behavior: 'smooth'
});
}
window.addEventListener('scroll', function() {
const backToTopBtn = document.getElementById('global-back-to-top');
// Вычисляем высоту страницы и положение скролла
const documentHeight = document.documentElement.scrollHeight;
const windowHeight = window.innerHeight;
const scrollTop = window.pageYOffset || document.documentElement.scrollTop;
// Показываем кнопку только в последней трети страницы
const scrollPercent = (scrollTop + windowHeight) / documentHeight;
if (scrollPercent > 0.66) { // Показываем когда прокрутили 66% страницы
backToTopBtn.style.opacity = '1';
backToTopBtn.style.visibility = 'visible';
} else {
backToTopBtn.style.opacity = '0';
backToTopBtn.style.visibility = 'hidden';
}
});
// Добавляем hover эффекты
document.addEventListener('DOMContentLoaded', function() {
const backToTopBtn = document.getElementById('global-back-to-top');
backToTopBtn.addEventListener('mouseenter', function() {
this.style.background = 'rgba(255, 255, 255, 0.3)';
this.style.transform = 'translateY(-2px) scale(1.05)';
this.style.boxShadow = '0 6px 20px rgba(0, 0, 0, 0.4)';
});
backToTopBtn.addEventListener('mouseleave', function() {
this.style.background = 'rgba(255, 255, 255, 0.15)';
this.style.transform = 'translateY(0) scale(1)';
this.style.boxShadow = '0 4px 15px rgba(0, 0, 0, 0.2)';
});
});
</script>