2013-07-20 4 views
0

검색 할 때 이미지의 클래스를 변경하는 검색 상자가 있습니다. 하지만 다른 CSS 코드를 방해하고 있습니다. 3 문자 또는 최대 입력 한 경우에만 함수를 실행할 싶습니다. 시간이 지났어.onkeyup 함수를 IF 문으로 변경

HTML

<input type="text" id="search" size="3" maxlength="3"/> 

당신은 시도 여기 http://jsfiddle.net/FZYgP/2/

+0

함수에서 'this.value.length'를 사용하여 입력 텍스트의 길이를 가져올 수 있습니다. –

+0

'this.value'는'images [i] .src'의 처음에 나타날 수 있습니까? 그렇다면'> 0'이 아니라'> = 0'을 원할 것입니다. – tjameson

답변

0

실제 페이지를 확인할 수 있습니다

var input = document.getElementById('search'); 
var images = document.getElementById("GALLERY").getElementsByTagName('img'); 

input.onkeyup = function(){ 
    for(var i = images.length; i--;){ 
     images[i].className = 
     images[i].src.indexOf(this.value) > 0 ? 
     'highlight' : 
     ''; 
    }  
}; 

JAVASCRIPT

input.onkeyup = function(){ 
    var value = this.value; 
    if(value.length < 3 && value.length < input.getAttribute('maxlength')){ 
     return; 
    } 
    for(var i = images.length; i--;){ 
     images[i].className = 
     images[i].src.indexOf(value) > 0 ? 
     'highlight' : 
     ''; 
    }  
}; 

데모 :

+0

@Arun_P_Johny 이것은 매우 짧고 도움이되었습니다. 고마워요. – srtstripes

관련 문제