mirror of
https://github.com/dyzulk/portfolio-html.git
synced 2026-01-26 13:31:59 +07:00
76 lines
2.7 KiB
JavaScript
76 lines
2.7 KiB
JavaScript
/*===== MENU SHOW =====*/
|
|
const showMenu = (toggleId, navId) =>{
|
|
const toggle = document.getElementById(toggleId),
|
|
nav = document.getElementById(navId)
|
|
|
|
if(toggle && nav){
|
|
toggle.addEventListener('click', ()=>{
|
|
nav.classList.toggle('show')
|
|
})
|
|
}
|
|
}
|
|
showMenu('nav-toggle','nav-menu')
|
|
|
|
/*==================== REMOVE MENU MOBILE ====================*/
|
|
const navLink = document.querySelectorAll('.nav__link')
|
|
|
|
function linkAction(){
|
|
const navMenu = document.getElementById('nav-menu')
|
|
// When we click on each nav__link, we remove the show-menu class
|
|
navMenu.classList.remove('show')
|
|
}
|
|
navLink.forEach(n => n.addEventListener('click', linkAction))
|
|
|
|
/*==================== SCROLL SECTIONS ACTIVE LINK ====================*/
|
|
const sections = document.querySelectorAll('section[id]')
|
|
|
|
function scrollActive(){
|
|
const scrollY = window.pageYOffset
|
|
|
|
sections.forEach(current =>{
|
|
const sectionHeight = current.offsetHeight
|
|
const sectionTop = current.offsetTop - 50;
|
|
sectionId = current.getAttribute('id')
|
|
|
|
if(scrollY > sectionTop && scrollY <= sectionTop + sectionHeight){
|
|
document.querySelector('.nav__menu a[href*=' + sectionId + ']').classList.add('active')
|
|
}else{
|
|
document.querySelector('.nav__menu a[href*=' + sectionId + ']').classList.remove('active')
|
|
}
|
|
})
|
|
}
|
|
window.addEventListener('scroll', scrollActive)
|
|
|
|
/*===== SCROLL REVEAL ANIMATION =====*/
|
|
const sr = ScrollReveal({
|
|
origin: 'top',
|
|
distance: '60px',
|
|
duration: 2000,
|
|
delay: 200,
|
|
// reset: true
|
|
});
|
|
|
|
sr.reveal('.home__data, .about__img, .skills__subtitle, .skills__text',{});
|
|
sr.reveal('.home__img, .about__subtitle, .about__text, .skills__img',{delay: 400});
|
|
sr.reveal('.home__social-icon',{ interval: 200});
|
|
sr.reveal('.skills__data, .work__img, .contact__input',{interval: 200});
|
|
|
|
/*===== TELEGRAM BOT =====*/
|
|
function kirimPesan() {
|
|
|
|
var nama = document.getElementById('name');
|
|
var email = document.getElementById('email');
|
|
var email = document.getElementById('subject');
|
|
var pesan = document.getElementById('message');
|
|
|
|
var gabungan = 'Nama%3A%0A' + name.value + '%0AEmail%3A%0A' + email.value + '%0ASubject%3A%0A' + subject.value + '%0APesan%3A%0A' + message.value;
|
|
|
|
var token = '6260715907:AAHYHXLrAwSjnUecHxLi0AC01k1FM0xbr8M'; // Ganti dengan token bot yang kamu buat
|
|
var grup = '-836942032'; // Ganti dengan chat id dari bot yang kamu buat
|
|
|
|
$.ajax({
|
|
url: `https://api.telegram.org/bot${token}/sendMessage?chat_id=${grup}&text=${gabungan}&parse_mode=html`,
|
|
method: `POST`,
|
|
})
|
|
}
|