-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathscript.js
More file actions
152 lines (126 loc) · 4.95 KB
/
script.js
File metadata and controls
152 lines (126 loc) · 4.95 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
$(document).ready(function(){
$(window).scroll(function(){
// sticky navbar on scroll script
if(this.scrollY > 20){
$('.navbar').addClass("sticky");
}else{
$('.navbar').removeClass("sticky");
}
// scroll-up button show/hide script
if(this.scrollY > 500){
$('.scroll-up-btn').addClass("show");
}else{
$('.scroll-up-btn').removeClass("show");
}
});
// slide-up script
$('.scroll-up-btn').click(function(){
$('html').animate({scrollTop: 0});
// removing smooth scroll on slide-up button click
$('html').css("scrollBehavior", "auto");
});
$('.navbar .menu li a').click(function(){
// applying again smooth scroll on menu items click
$('html').css("scrollBehavior", "smooth");
});
// toggle menu/navbar script
$('.menu-btn').click(function(){
$('.navbar .menu').toggleClass("active");
$('.menu-btn i').toggleClass("active");
});
// typing text animation script
var typed = new Typed(".typing", {
strings: ["IT Project Manager", "Business Analyst", "Data Scientist"],
typeSpeed: 100,
backSpeed: 60,
loop: true
});
var typed = new Typed(".typing-2", {
strings: ["IT Project Manager", "Business Analyst", "Data Scientist"],
typeSpeed: 100,
backSpeed: 60,
loop: true
});
// owl carousel script
$('.carousel').owlCarousel({
margin: 20,
loop: true,
autoplay: true,
autoplayTimeOut: 2000,
autoplayHoverPause: true,
responsive: {
0:{
items: 1,
nav: false
},
600:{
items: 2,
nav: false
},
1000:{
items: 3,
nav: false
}
}
});
});
/*newly added */
const skillsData = {
"data-analytics": ["Tableau", "Power BI", "Business Intelligence (BI)","Pandas","Numpy","Excel"],
"Data Engineering Tools": ["ETL (Extract, Transform, Load)", "Data Modeling", "Spark", "Data Warehousing", "Snowflake","Informatica"],
"Data Science and Machine Learning": ["Data Analytics", "Statistical Analysis", "Predictive Modeling","Regression Models","Neural Networks","Random Forest","Decision Trees","Supervised & UnSupervised Methodologies"],
"Cloud Platforms": ["AWS (Amazon Web Services)", "Azure Cloud","Aws Glue","Athena","Aws s3","Aws RDS","Amazon Redshift"],
"programming Languages & Tools": ["Python", "SQL","Jupyter Notebook","VS Code","PyCharm"],
"Soft Skills": ["Cross-functional Collaboration", "Problem Solving", "Communication Skills", "Leadership", "Technical Writing", "Strong Communication", "Collaboration","Problem-Solving","Critical Thinking"]
};
function showPopup(skill) {
const popup = document.getElementById("skills-popup");
const title = document.getElementById("popup-title");
const list = document.getElementById("popup-list");
// Set title and list items dynamically
title.innerText = skill.replace("-", " ").toUpperCase();
list.innerHTML = skillsData[skill]
.map((item) => `<li>${item}</li>`)
.join("");
// Show the popup
popup.style.display = "flex";
}
// Close popup if clicked outside of popup-content
function closePopupOnOutsideClick(event) {
const popupContent = document.querySelector(".popup-content");
if (!popupContent.contains(event.target)) {
hidePopup();
}
}
function hidePopup() {
const popup = document.getElementById("skills-popup");
popup.style.display = "none";
}
// Attach the click listener to the popup container
document.getElementById("skills-popup").addEventListener("click", closePopupOnOutsideClick);
// Optional smooth scroll for project section
$('.project-card .btn').click(function () {
window.location.href = $(this).attr('href');
});
// // script for projects scroll bar
const slider = document.querySelector('.project-slider');
const projects = document.querySelectorAll('.project');
const leftBtn = document.querySelector('.left-btn');
const rightBtn = document.querySelector('.right-btn');
let currentIndex = 0;
// Dynamically set the slider's width and each project's width
slider.style.width = `${projects.length * 100}%`;
projects.forEach((project) => {
project.style.width = `${100 / projects.length}%`;
});
function updateSlider() {
slider.style.transform = `translateX(-${currentIndex * 100}%)`;
}
leftBtn.addEventListener('click', () => {
currentIndex = (currentIndex > 0) ? currentIndex - 1 : projects.length - 1; // Loop to last
updateSlider();
});
rightBtn.addEventListener('click', () => {
currentIndex = (currentIndex < projects.length - 1) ? currentIndex + 1 : 0; // Loop to first
updateSlider();
});