30-08-2011, 09:37
|
|
|
חבר מתאריך: 25.08.03
הודעות: 9,114
|
|
את יכולה לעשות בדיקה בכל קישור - בשלב "כתיבת" הקישור, ואת יכולה לעבור לאחר מכן על כל הקישורים ולבצע את הבדיקה בהתאם.
קוד:
<ul id="mainMenu">
<li><a href="1">Link 1</a></li>
<li><a href="2">Link 2</a></li>
<li><a href="3">Link 3</a></li>
</ul>
-----------------------------------
var d = document;
var links = d.getElementById("mainMenu").getElementsByTagName("a");
var currentPath = window.document.location.pathname;
for(var i=0; i<links.length; i++){
if(links[i].href == currentPath){
links[i].className = "currentPage";
break;
}
}
לא בדקתי את הקוד, כך שבהחלט יתכן והקוד כמות שהוא לא יפעל, אבל את מוזמנת לבדוק בעצמך ולספר לנו.
הערות טכניות:
השימוש במשתנים עבור ערכים קיימים, נעשה כדי לקצר את זמן הגישה לאותו ערך.
בקוד שכתבתי עשיתי שימוש בלולאת for רגילה, ולא בלולאת for in (העוברת על כל איברי המערך אחד לאחד) באופן מכוון, הלולאה מהסוג האחרון עלולה לעבור על שני איברים נוספים שמבחינתך אינם חלק מהמערך, ולא בהכרח לפעול באופן זהה בכל הדפדפנים.
נערך לאחרונה ע"י ישראל K בתאריך 30-08-2011 בשעה 09:41.
|