사용자가 입력 요소 안에 텍스트를 입력하면 실행하고 싶은 JavaScript 함수가 있습니다. 현재 console.log라면 함수가 실행되는 것을 볼 수 있습니다. 키 업 메소드를 사용하여 어떻게 실행시킬 수 있습니까? 키 업에서 내 기능을 호출하려면 어떻게해야합니까?
관련 코드
은 다음과 같습니다.var $ = function (selector) {
var elements = [],
i,
len,
cur_col,
element,
par,
fns;
if(selector.indexOf('#') > 0) {
selector = selector.split('#');
selector = '#' + selector[selector.length -1];
}
selector = selector.split(' ');
fns = {
id: function (sel) {
return document.getElementById(sel);
},
get : function(c_or_e, sel, par) {
var i = 0, len, arr = [], get_what = (c_or_e === 'class') ? "getElementsByClassName" : "getElementsByTagName";
if (par.length) {
while(par[I]) {
var temp = par[i++][get_what](sel);
Array.prototype.push.apply(arr, Array.prototype.slice.call(temp));
}
} else {
arr = par[get_what](sel);
}
return (arr.length === 1)? arr[0] : arr;
}
};
len = selector.length;
curr_col = document;
for (i = 0; i < len; i++) {
element = selector[i];
par = curr_col;
if(element.indexOf('#') === 0) {
curr_col = fns.id(element.split('#'[1]));
} else if (element.indexOf('.') > -1) {
element = element.split('.');
if (element[0]) {
par = fns.get('elements', element[0], par);
for (i =0; par[i]; i++) {
if(par[i].className.indexOf(element[1]> -1)) {
elements.push(par[i]);
}
}
curr_col = elements;
} else {
curr_col = fns.get('class', element[1], par);
}
} else {
curr_col = fns.get('elements', element, par);
}
}
return elements;
};
이 함수는 셀렉터와 일치하는 요소를 반환하기 만하며 아무 것도 수행하지 않습니다. – Barmar