JS實現回車搜尋
阿新 • • 發佈:2018-12-11
方法一
functionhuichesearch(){//回車搜尋
varevent =window.event||arguments.callee.caller.arguments[0];
if(event.keyCode== 13){
search();//搜尋函式
}
}
程式碼解釋:當window觸發事件或者函式被呼叫觸發事件時,判斷是否按下回車鍵(keyCode=13),按下回車鍵時進行搜尋。
window.event代表事件物件的狀態,只有在事件(如滑鼠、鍵盤等事件)被觸發時這個物件才存在。
arguments.callee指函式體本身,即huichesearch()函式本身;
arguments.callee.caller.指函式體的呼叫函式體;
Arguments.callee.caller.arguments[0]指事件物件。
方法二:(考慮到瀏覽器相容性)
function huichesearch(e){//回車搜尋
varkeyCode =window.event? e.keyCode:e.which;
if(keyCode== 13){
search();//搜尋函式
}
}
程式碼解釋:
which 和 keyCode 屬性提供瞭解決瀏覽器的相容性的方法:
l keyCode屬性返回onkeypress事件觸發的鍵的值的字元程式碼,或者 onkeydown 或 onkeyup 事件的鍵的程式碼。
瀏覽器支援:
注意:在 Firefox 中,keyCode 屬性在 onkeypress 事件中是無效的 (返回 0)。瀏覽器相容問題,可以一起使用 which 和 keyCode 屬性來解決:
var keyCode = window.event ? e.keyCode:e.which;
which 屬性返回onkeypress事件觸發的鍵的值的字元程式碼,或者 onkeydown 或 onkeyup 事件的鍵的程式碼
瀏覽器支援:
對於某個控制元件的操作
$("#buildingsearch").keydown(function(e){ if(e.keyCode ==13){ // 觸發鍵盤事件enter 防止冒泡產生 initPageInfo(); return false; } });
對於全域性的
$(function(){
document.onkeydown = function(e){
var ev = document.all ? window.event : e;
if(ev.keyCode==13) {
initPageInfo();
return false;
}
}
});
轉自:https://blog.csdn.net/u012881904/article/details/53022814