ஊடாடும் மாதிரிகள் மூலம் உங்கள் படத்தொகுப்பை மேம்படுத்துதல்
நவீன வலைத்தளங்களுக்கு பார்வைக்கு ஈர்க்கும் படத்தொகுப்பு அவசியம், ஆனால் மாதிரிகள் மூலம் மென்மையான செயல்பாட்டை உறுதி செய்வது தந்திரமானதாக இருக்கும். உங்கள் கேலரியில் பல வேலை மாதிரிகளை செயல்படுத்துவதில் நீங்கள் சிரமப்படுகிறீர்கள் என்றால், நீங்கள் தனியாக இல்லை. பல டெவலப்பர்கள் தங்கள் மாதிரிகள் சரியாக திறக்கப்படாத அல்லது ஒன்றுக்கொன்று முரண்படும் சிக்கல்களை எதிர்கொள்கின்றனர்.
மாடல்களைப் பயன்படுத்துவது பார்வையாளர்களை பெரிய வடிவத்தில் படங்களைப் பார்க்க அனுமதிப்பது மட்டுமல்லாமல் பயனர் அனுபவத்தையும் மேம்படுத்துகிறது. சேர்த்தல் வழிசெலுத்தல் அம்புகள், Facebook அல்லது Messenger போன்ற தளங்களைப் போலவே, பயனர்கள் ஒவ்வொரு முறையும் மாதிரியை மூடாமல் படங்களைச் சீராக உலாவ அனுமதிப்பதன் மூலம் பயன்பாட்டினை மேலும் மேம்படுத்துகிறது.
இந்தக் கட்டுரையில், உங்கள் HTML, CSS மற்றும் JavaScript அமைப்பில் பல மாதிரிகளை எவ்வாறு ஒருங்கிணைப்பது என்பதை ஆராய்வோம். தடையற்ற வழிசெலுத்தல் அனுபவத்தை உருவாக்க எளிய அம்புகளை எவ்வாறு பயன்படுத்துவது என்பதையும் நீங்கள் கற்றுக் கொள்வீர்கள். வேலை செய்யாத பிற தீர்வுகளை நீங்கள் முயற்சித்திருந்தாலும், பின்வரும் அணுகுமுறை இந்த சவால்களை எதிர்கொள்ள நம்பகமான முறையை வழங்க வேண்டும்.
உள்ளே நுழைவோம் படிப்படியான தீர்வு, உங்கள் கேலரியில் உள்ள ஒவ்வொரு படமும் இடது மற்றும் வலது வழிசெலுத்தல் அம்புகளுடன் அதன் சொந்த மாதிரியில் திறக்கப்படுவதை உறுதிசெய்கிறது. ஒரு சில மாற்றங்களுடன், உங்கள் கேலரியின் பயனர் அனுபவத்தை அடுத்த கட்டத்திற்கு கொண்டு செல்லலாம்.
கட்டளை | பயன்பாடு மற்றும் விளக்கத்திற்கான எடுத்துக்காட்டு |
---|---|
querySelectorAll() | கொடுக்கப்பட்ட CSS தேர்விக்கு பொருந்தும் அனைத்து கூறுகளையும் இந்த கட்டளை தேர்ந்தெடுக்கிறது. ஸ்கிரிப்ட்டில், கேலரியில் உள்ள அனைத்து படங்களையும் கைப்பற்ற இது பயன்படுத்தப்படுகிறது, இதனால் ஒவ்வொன்றும் கிளிக் செய்யும் போது ஒரு மாதிரியைத் தூண்டலாம். |
addEventListener() | ஒரு உறுப்புக்கு நிகழ்வு ஹேண்ட்லரைப் பதிவு செய்கிறது. இங்கே, படங்கள் மற்றும் வழிசெலுத்தல் அம்புகளில் கிளிக் நிகழ்வுகளைக் கேட்க இது பயன்படுத்தப்படுகிறது, இது மாதிரி மற்றும் பட மாற்றங்களின் சரியான செயல்பாட்டை உறுதி செய்கிறது. |
classList.add() | ஒரு உறுப்புக்கு மாறும் வகையில் CSS வகுப்பைச் சேர்க்கிறது. எடுத்துக்காட்டில் வெளிப்படையாகக் காட்டப்படவில்லை என்றாலும், வகுப்புகளை மாற்றுவதன் மூலம் மாதிரிகளைக் காட்ட அல்லது மறைக்க இந்த முறை பயனுள்ளதாக இருக்கும். |
DOMContentLoaded | ஆரம்ப HTML ஆவணம் முழுமையாக ஏற்றப்பட்டு பாகுபடுத்தப்படும் போது தூண்டும் நிகழ்வு. DOM இல் அனைத்து உறுப்புகளும் கிடைத்த பிறகுதான் ஜாவாஸ்கிரிப்ட் குறியீடு செயல்படும் என்பதை இது உறுதி செய்கிறது. |
modulus (%) operator | மீதமுள்ள பிரிவைக் கணக்கிடப் பயன்படுகிறது. இது படங்களுக்கு இடையில் செல்லும்போது குறியீட்டை மடக்கி சுழற்சி வழிசெலுத்தலை உருவாக்க உதவுகிறது (எ.கா., கடைசி படத்திலிருந்து முதல் படத்திற்கு செல்லும்). |
style.display | ஜாவாஸ்கிரிப்ட் மூலம் ஒரு உறுப்பின் CSS காட்சிப் பண்புகளைக் கையாளுகிறது. மாதிரி ஸ்கிரிப்ட்டில், ஒரு படத்தை கிளிக் செய்யும் போது அல்லது மூடப்படும் போது, மாதிரியைக் காட்ட அல்லது மறைக்கப் பயன்படுகிறது. |
this | ஒரு முறைக்குள் தற்போதைய பொருளைக் குறிக்கிறது. மட்டு ஜாவாஸ்கிரிப்ட் அணுகுமுறையில், கேலரிமோடல் வகுப்பின் பண்புகள் மற்றும் முறைகளை அணுகும் போது அதன் சூழலை பராமரிக்க இது பயன்படுகிறது. |
forEach() | ஒரு வரிசை அல்லது நோட்லிஸ்ட்டின் ஒவ்வொரு உறுப்புக்கும் மீண்டும் மீண்டும் வருகிறது. அனைத்து கேலரி படங்களுக்கும் கிளிக் நிகழ்வுகளை மாறும் வகையில் இணைக்க இந்த கட்டளை பயன்படுத்தப்படுகிறது. |
new | ஒரு பொருள் அல்லது வகுப்பின் புதிய நிகழ்வை உருவாக்குகிறது. இரண்டாவது தீர்வில், புதிய GalleryModal(images) கட்டளை கேலரி மாதிரி செயல்பாட்டை துவக்குகிறது. |
transform: translateY() | வழிசெலுத்தல் அம்புகளை செங்குத்தாக சீரமைக்க CSS பண்பு பயன்படுத்தப்படுகிறது. உள்ளடக்கத்தின் உயரம் மாறும் போது கூட அம்புகள் மையமாக இருப்பதை இது உறுதி செய்கிறது. |
மாடல் ஸ்கிரிப்ட்கள் உங்கள் கேலரி இணையதளத்தை எவ்வாறு மேம்படுத்துகின்றன
வழங்கப்பட்ட குறியீட்டில் செயல்படுத்தப்பட்ட மாதிரி செயல்பாடு பயனர்கள் எந்தப் படத்தையும் கிளிக் செய்து, கேலரி பக்கத்தை விட்டு வெளியேறாமல் விரிவாக்கப்பட்ட, தனிமைப்படுத்தப்பட்ட பார்வையில் பார்க்கலாம். கேலரியில் உள்ள ஒவ்வொரு படமும் ஏ மாதிரி, மற்ற படங்களுக்கு இடையில் மாறுவதற்கு வழிசெலுத்தல் அம்புகளுடன் படத்தை முழு அளவில் காண்பிக்கும். இந்த அணுகுமுறை மேம்படுத்துகிறது பயனர் அனுபவம் பார்வையாளர்கள் சமூக ஊடக தளங்களில் உள்ளதைப் போலவே, மாதிரிக்குள்ளேயே முழு கேலரியையும் தடையின்றி உலாவ அனுமதிப்பதன் மூலம்.
இந்த செயல்பாட்டின் முக்கிய உறுப்பு ஜாவாஸ்கிரிப்ட்டின் பயன்பாடு ஆகும் நிகழ்வு கேட்போர். ஒவ்வொரு படத்திற்கும் ஒரு கிளிக் நிகழ்வு ஒதுக்கப்பட்டுள்ளது, இது மாதிரியைத் திறந்து, கிளிக் செய்யப்பட்ட படத்தின் அடிப்படையில் உள்ளடக்கத்தை மாறும் வகையில் புதுப்பிக்கிறது. இரண்டாவது தீர்வில் பயன்படுத்தப்படும் மட்டு அணுகுமுறை, மாதிரி நடத்தையை ஒரு வகுப்பில் இணைத்து அளவிடக்கூடிய அமைப்பை உருவாக்குகிறது. எதிர்காலத்தில் கேலரி அல்லது அதன் செயல்பாடுகள் வளர்ந்தால், குறியீட்டைப் பராமரிப்பது மற்றும் நீட்டிப்பது எளிது என்பதை இது உறுதி செய்கிறது.
மாதிரியில் உள்ள வழிசெலுத்தல் இரண்டு அம்புகளைப் பயன்படுத்தி கட்டுப்படுத்தப்படுகிறது—‘அடுத்து’ மற்றும் ‘முந்தையது’. மாடுலஸ் ஆபரேட்டர் கேலரியின் இறுதி அல்லது தொடக்கத்தை அடையும் போது பட அட்டவணை சுற்றி வருவதை உறுதி செய்கிறது. இது வழிசெலுத்தலின் போது பயனரை முட்டுச்சந்தில் அடைவதைத் தடுக்கிறது மற்றும் தொடர்ச்சியான உலாவல் அனுபவத்தை வழங்குகிறது.
பயன்பாடு CSS மாதிரி மற்றும் அம்புகளை வடிவமைக்க, வடிவமைப்பு பதிலளிக்கக்கூடியது மற்றும் நவீன இணைய தரநிலைகளுடன் சீரமைக்கப்படுவதை உறுதி செய்கிறது. திரையின் அளவைப் பொருட்படுத்தாமல் மாதிரி மையமாக இருக்கும், மேலும் அம்புகள் செங்குத்தாக சீரமைக்கப்படுகின்றன மொழிபெயர்Y() சொத்து. இடைமுகம் அழகாகவும், பல்வேறு சாதனங்களில் பயன்படுத்த எளிதாகவும் இருக்கும் என்பதற்கு இது உத்தரவாதம் அளிக்கிறது. HTML தளவமைப்பு முதல் மட்டு ஜாவாஸ்கிரிப்ட் வகுப்பு வரையிலான முழு அமைப்பும், வலுவான, பராமரிக்கக்கூடிய மற்றும் பயனர் நட்பு கேலரி அமைப்பை உறுதி செய்கிறது.
தீர்வு 1: அடிப்படை HTML, CSS மற்றும் ஜாவாஸ்கிரிப்ட் மாடல் அம்புகளுடன்
வழிசெலுத்தல் மாதிரிகளுக்கு HTML, CSS மற்றும் வெண்ணிலா ஜாவாஸ்கிரிப்ட் ஆகியவற்றைப் பயன்படுத்தி முன்-இறுதியில் மட்டுமே அணுகுமுறையை இந்தத் தீர்வு நிரூபிக்கிறது.
// HTML structure for each modal
<div class="modal" id="modal1">
<span class="close" onclick="closeModal()">×</span>
<img class="modal-content" id="img01">
<div class="caption"></div>
<div class="nav left" onclick="prevImage()">❮</div>
<div class="nav right" onclick="nextImage()">❯</div>
</div>
// JavaScript to handle modal behavior
let currentImage = 0;
const images = document.querySelectorAll('.galleryimg');
const modal = document.getElementById('modal1');
const modalImg = document.getElementById('img01');
images.forEach((img, index) => {
img.onclick = () => {
openModal(index);
};
});
function openModal(index) {
currentImage = index;
modal.style.display = "block";
modalImg.src = images[index].src;
}
function closeModal() {
modal.style.display = "none";
}
function nextImage() {
currentImage = (currentImage + 1) % images.length;
modalImg.src = images[currentImage].src;
}
function prevImage() {
currentImage = (currentImage - 1 + images.length) % images.length;
modalImg.src = images[currentImage].src;
}
// CSS for modal styling
.modal {
display: none;
position: fixed;
z-index: 1;
left: 0;
top: 0;
width: 100%;
height: 100%;
background-color: rgba(0, 0, 0, 0.8);
}
.modal-content {
margin: auto;
display: block;
width: 80%;
}
.nav {
cursor: pointer;
position: absolute;
top: 50%;
transform: translateY(-50%);
}
தீர்வு 2: நிகழ்வு பிரதிநிதித்துவத்துடன் மாடுலர் ஜாவாஸ்கிரிப்ட் அணுகுமுறை
இந்த அணுகுமுறை அளவிடுதல் மற்றும் பராமரிப்பை மேம்படுத்த மட்டு ஜாவாஸ்கிரிப்ட் செயல்பாடுகளைப் பயன்படுத்துகிறது.
// Modular JavaScript setup for gallery modal
class GalleryModal {
constructor(images) {
this.images = images;
this.currentImage = 0;
this.modal = document.querySelector('.modal');
this.modalImg = this.modal.querySelector('.modal-content');
this.attachEventListeners();
}
attachEventListeners() {
this.images.forEach((img, index) => {
img.addEventListener('click', () => this.open(index));
});
this.modal.querySelector('.left').addEventListener('click', () => this.prev());
this.modal.querySelector('.right').addEventListener('click', () => this.next());
}
open(index) {
this.currentImage = index;
this.modal.style.display = 'block';
this.modalImg.src = this.images[index].src;
}
next() {
this.currentImage = (this.currentImage + 1) % this.images.length;
this.modalImg.src = this.images[this.currentImage].src;
}
prev() {
this.currentImage = (this.currentImage - 1 + this.images.length) % this.images.length;
this.modalImg.src = this.images[this.currentImage].src;
}
}
// Initialize the modal functionality
document.addEventListener('DOMContentLoaded', () => {
const images = document.querySelectorAll('.galleryimg');
new GalleryModal(images);
});
// Additional CSS Styling
.modal {
display: none;
position: fixed;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.8);
justify-content: center;
align-items: center;
}
அணுகல் மற்றும் பயன்பாட்டு அம்சங்களுடன் கேலரி மாதிரிகளை மேம்படுத்துதல்
பலவற்றை உருவாக்குவதற்கு அப்பால் மாதிரிகள் வழிசெலுத்தலுடன், கருத்தில் கொள்ள வேண்டிய மற்றொரு முக்கியமான அம்சம் அணுகலை மேம்படுத்துவதாகும். குறைபாடுகள் உள்ள பயனர்களுக்கு கேலரி அணுகக்கூடியதாக இருப்பதை உறுதிசெய்வது, உங்கள் இணையதளம் உள்ளடக்கியதாக இருப்பதை உறுதிசெய்கிறது. HTML உறுப்புகளுக்கு பொருத்தமான ARIA பண்புகளைச் சேர்ப்பதன் மூலமும், அனைத்துப் படங்களும் அர்த்தமுள்ளவையாக இருப்பதை உறுதி செய்வதன் மூலமும் இதை அடைய முடியும். alt உரை. இது ஸ்கிரீன் ரீடர்களுக்கான விளக்கங்களை வழங்குகிறது, பார்வையற்ற பயனர்களுக்கு உள்ளடக்கத்தைப் படிக்கும்படி செய்கிறது.
பயன்பாட்டிற்கான மற்றொரு முக்கிய காரணி, பயனர்கள் விசைப்பலகை மற்றும் மவுஸ் இரண்டையும் கொண்டு மாதிரிகளுக்கு செல்ல முடியும் என்பதை உறுதி செய்வதாகும். போன்ற குறிப்பிட்ட விசைப்பலகை நிகழ்வுகளைக் கேட்பதன் மூலம் இதை நீங்கள் அடையலாம் எஸ்கேப் மாதிரியை மூடுவதற்கான விசை மற்றும் பட வழிசெலுத்தலுக்கான அம்புக்குறி விசைகள். இந்த அம்சங்களைச் செயல்படுத்துவது கேலரியின் செயல்பாட்டை மேம்படுத்தும், பயனர்களுக்கு அதனுடன் தொடர்புகொள்வதற்கு பல வழிகளை வழங்குகிறது. கூடுதலாக, மொபைல் ஃபோன்கள் முதல் பெரிய மானிட்டர்கள் வரை அனைத்து திரை அளவுகளிலும் மாடல்கள் அழகாக இருப்பதை உறுதிசெய்ய பதிலளிக்கக்கூடிய வடிவமைப்பு அவசியம்.
கடைசியாக, படத்தை ஏற்றுவதை மேம்படுத்துவது உங்கள் கேலரியின் செயல்திறனை கணிசமாக பாதிக்கும். சோம்பேறி ஏற்றுதல் நுட்பங்கள், சேர்ப்பது போன்றவை ஏற்றுதல்="சோம்பேறி" படங்களுக்கு பண்புக்கூறு, அவை பயனருக்குத் தெரியும் போது மட்டுமே அவற்றை ஏற்ற அனுமதிக்கும். இது தேவையற்ற தரவு நுகர்வுகளைத் தடுக்கிறது மற்றும் ஆரம்ப பக்க ஏற்றத்தை விரைவுபடுத்துகிறது. இணைந்து ஜாவாஸ்கிரிப்ட்- அடிப்படையிலான மாதிரிகள், இந்த மேம்படுத்தல்கள் சாதனங்கள் மற்றும் நெட்வொர்க் நிலைமைகள் முழுவதும் மென்மையான மற்றும் பதிலளிக்கக்கூடிய பயனர் அனுபவத்தை உறுதி செய்கின்றன.
ஜாவாஸ்கிரிப்ட் மூலம் மாதிரிகளை செயல்படுத்துவது பற்றிய பொதுவான கேள்விகள்
- ஜாவாஸ்கிரிப்டைப் பயன்படுத்தி ஒரு மாதிரியை எவ்வாறு தூண்டுவது?
- நீங்கள் பயன்படுத்தலாம் addEventListener('click') ஒரு படத்தை கிளிக் செய்யும் போது மாதிரியை திறக்க.
- விசைப்பலகையைப் பயன்படுத்தி மாடலை எவ்வாறு மூடுவது?
- என்று கேளுங்கள் keydown நிகழ்வு மற்றும் சரிபார்க்கவும் key === 'Escape' மாதிரியை மூட.
- அடுத்த மற்றும் முந்தைய பட வழிசெலுத்தலைச் செயல்படுத்த எளிதான வழி எது?
- பயன்படுத்தவும் modulus (%) பட்டியலின் முடிவைத் தாக்காமல் படங்களைச் சுழற்றலாம்.
- மொபைல் சாதனங்களில் மாடல் செயல்படுவதை நான் எப்படி உறுதி செய்வது?
- பயன்படுத்தவும் media queries CSS இல் மற்றும் வெவ்வேறு திரை அளவுகளில் வடிவமைப்பை சோதிக்கவும்.
- சோம்பேறி ஏற்றுதல் என்றால் என்ன, அதை எவ்வாறு செயல்படுத்துவது?
- சேர் loading="lazy" உங்களுக்கு img காட்சிப் பகுதியில் இருக்கும் வரை படங்களை ஏற்றுவதை ஒத்திவைக்க குறிச்சொற்கள்.
இறுதி எண்ணங்களுடன் முடிப்பது
செயல்பாட்டை செயல்படுத்துதல் மாதிரிகள் ஒரு கேலரியில் பயனர் தொடர்புகளை மேம்படுத்துவதற்கு முக்கியமானது. அம்புக்குறி அடிப்படையிலான வழிசெலுத்தல் மற்றும் விசைப்பலகை ஆதரவு போன்ற அம்சங்களைச் சேர்ப்பதன் மூலம் கேலரி பயனர் நட்பு மற்றும் பல சாதனங்களில் அணுகக்கூடியதாக இருப்பதை உறுதி செய்கிறது. இந்த கூறுகள் பயனர்களை திறமையாக படங்களை உலாவ அனுமதிக்கின்றன.
கேலரியின் செயல்திறனைப் பராமரிக்க, சோம்பேறி ஏற்றுதல் போன்ற தேர்வுமுறை நுட்பங்களைப் பயன்படுத்த வேண்டும். நன்கு கட்டமைக்கப்பட்ட கலவை ஜாவாஸ்கிரிப்ட் மற்றும் CSS மென்மையான மாற்றங்கள் மற்றும் ஈர்க்கக்கூடிய அனுபவத்தை அனுமதிக்கிறது. சிறந்த நடைமுறைகளைப் பின்பற்றுவது, கேலரி பதிலளிக்கக்கூடியது, அணுகக்கூடியது மற்றும் எதிர்கால புதுப்பிப்புகளுடன் விரிவாக்க எளிதானது.
பல மாதிரிகளை உருவாக்குவதற்கான ஆதாரங்கள் மற்றும் குறிப்புகள்
- செயல்படுத்துவதற்கான விரிவான ஆவணங்கள் மாதிரிகள் மற்றும் JavaScript ஐப் பயன்படுத்தி பயனர் இடைவினைகளைக் கையாள்வதை இங்கு காணலாம் MDN வெப் டாக்ஸ் .
- கேலரி தளவமைப்புகளை மேம்படுத்துவதற்கான பதிலளிக்கக்கூடிய வடிவமைப்பு நுட்பங்கள் குறிப்பிடப்பட்டன CSS-தந்திரங்கள் . இந்த வழிகாட்டி நவீன CSS நடைமுறைகள் பற்றிய நடைமுறை நுண்ணறிவுகளை வழங்குகிறது.
- செயல்திறனை மேம்படுத்த சோம்பேறியாக ஏற்றும் படங்களின் கருத்து இங்கு விளக்கப்பட்டுள்ளது Web.dev , சிறந்த இணைய மேம்பாட்டு நடைமுறைகளைப் பகிர்ந்து கொள்வதற்காக Google உருவாக்கிய தளம்.
- வழிசெலுத்தல் கருத்துக்கள் மற்றும் பயனர் அனுபவ நுண்ணறிவு, ஈர்க்கப்பட்டவை UX வடிவமைப்பு , மாதிரி கேலரியில் தடையற்ற அம்புகளை செயல்படுத்துவதற்கான திசையை வழங்கியது.
- ஜாவாஸ்கிரிப்டில் நிகழ்வு கையாளுதல் பற்றிய ஆழமான புரிதலுக்காக, இந்தக் கட்டுரையில் இருந்து JavaScript.info மிகவும் தகவல் இருந்தது.