Установка идентификатора ссылки на основе ее ссылки

$('.portfolioThumbs ul li a').mouseover(
    function(){
        var buttLink = $(this).attr('href') 
        var buttLinkArray = buttLink.split( '/' ); // Split the URL after each / and Create an array of each
        var pFN = buttLinkArray[2]; // We want the Portfolio Folder Name
        var url = window.location.pathname;

        $('.galleryNav ul li a').removeClass('hovered');
        $('.galleryNav ul li a' + '#' + pFN).addClass('hovered');
        window.location.pathname = url + '#' + pFN;
    }       
);

Этот код позволяет мне установить идентификатор для каждой кнопки, основываясь на ее href, когда пользователь "наведет курсор мыши" на нее. Кто-нибудь знает, как это можно сделать автоматически при загрузке страницы, чтобы каждая кнопка в списке получала идентификатор на основе своего href без какого-либо взаимодействия с пользователем.

Спасибо,

Дэн

2 ответа

Решение

Итерация по всем ссылкам при загрузке страницы. Если вы используете jQuery 1.7+, используйте prop установить атрибут href. В противном случае используйте attr,

$('.portfolioThumbs ul li a').each(
    function(){
        var buttLink = $(this).attr('href')  //do you really want attr or do you want prop?
        var buttLinkArray = buttLink.split( '/' ); // Split the URL after each / and Create an array of each
        var pFN = buttLinkArray[2]; // We want the Portfolio Folder Name
        var url = window.location.pathname;
        $(this).prop('href', url);
    }       
);

Вы можете запустить код после загрузки документа:

$(document).ready(function() {
    // your code here
});
Другие вопросы по тегам