JavascriptSnippets

JQuery : 클래스 이름만으로 페이지 전체에 롤오버 이미지 쉽게 적용하기

작업중에 얻은 소스를 변경한것.
기존에는 지정한 파일 확장자의 _on 이미지 만을 사용했다면 변경한 것에는 이미지 파일에 상관 없이 클래스명이 hoverimg 일때 무조건 확장자 앞에 _on 의 유무에 따라 롤오버가 됨

위 소스를 넣고싶은 페이지에 붙여 넣고 이미지 테그에 class="hoverimg" 만 넣으면됨.

$(document).ready(function(){
    $(".hoverimg").mouseover(function (){
        var file = $(this).attr('src').split('/');
        var filename = file[file.length-1];
        var path = '';
 
        for(i=0 ; i < file.length-1 ; i++) {
            path = ( i == 0 )?path + file[i]:path + '/' + file[i];
        }
        $(this).attr('src',path+'/'+filename.replace(/.([a-zA-Z]{3,3})$/, "_on.$1"));
        //$(this).attr('src',path+'/'+filename.replace('.','_on.'));
 
    }).mouseout(function(){
        var file = $(this).attr('src').split('/');
        var filename = file[file.length-1];
        var path = '';
        for(i=0 ; i < file.length-1 ; i++){
            path = ( i == 0 )?path + file[i]:path + '/' + file[i];
        }
        $(this).attr('src',path+'/'+filename.replace(/_on.([a-zA-Z]{3,3})$/, ".$1"));
        //$(this).attr('src',path+'/'+filename.replace('_on.','.'));
    });
});