js调试的问题,js高手请进!
注册百度帐号时需要填写邮箱,我发现,这个输入框可以自动补全邮箱号,我想知道的是,用chrome调试器,怎么查看,这个输入框上都绑定了什么事件,它获得焦点或失去焦点时都执行...
注册百度帐号时需要填写邮箱,我发现, 这个输入框可以自动补全邮箱号,我想知道的是,用chrome调试器,怎么查看,这个输入框上都绑定了什么事件,它获得焦点或失去焦点时都执行了那个函数,或者说,我在输入框中鼠标右键黏贴触发了什么函数(貌似没有什么监听函数可以监听鼠标右键黏贴)?这些调试,我用chrome没找着相关功能,哪位高手指导一下,好让我js调试能力有质的飞跃,特别是,我搞不懂,没有什么函数可以监听鼠标右键黏贴,为什么在上面的输入框中鼠标右键黏贴,下面会出现邮箱号补全提示呢?怎么调试都没有发现问题所在。如何让,对输入框的操作直接断点到响应函数呢?比如说,我让输入框获得焦点,就让js调试中断到输入框获得焦点的处理函数上?
展开
2个回答
展开全部
右键粘贴不是监听的鼠标事件,而是 onpaste (或 DOMCharacterDataModified)。
你可以复制粘贴下面的代码进行测试,看浏览器是如何监听鼠标和键盘的。
至于 Chrome 中的调试工具我不太熟悉,一般使用 Firefox + Firebug。
<!DOCTYPE html>
<html>
<head>
<meta charset="gb2312" />
<title></title>
<script type="text/javascript">
window.onload = function() {
var email = document.getElementById("email"),
debug = document.getElementById("debug");
function Debug(msg) {
debug.innerHTML += "<p>" + msg + "</p>";
debug.scrollTop = 99999;
}
email.onkeydown = function() {Debug("<p>键盘按下</p>");};
email.onkeyup = function() {Debug("<p>键盘抬起</p>");};
email.onkeypress = function() {Debug("<p>键盘按下并抬起</p>");};
email.onmouseover = function() {Debug("<p>鼠标经过</p>");};
email.onmouseout = function() {Debug("<p>鼠标离开</p>");};
email.onmousedown = function() {Debug("<p>鼠标按下</p>");};
email.onmouseup = function() {Debug("<p>鼠标抬起</p>");};
email.onchange = function() {Debug("<p>内容发生改变</p>");};
email.onfocus = function() {Debug("<p>获取焦点</p>");};
email.onblur = function() {Debug("<p>失去焦点</p>");};
email.onpaste = function() {Debug("<p>执行粘贴</p>");};
if(document.addEventListener) {
email.addEventListener("DOMCharacterDataModified", function(){
Debug("<p>执行粘贴</p>");
}, false);
}
};
</script>
</head>
<body>
<input id="email" type="text" />
<div id="debug" style="height: 500px; overflow: auto;"></div>
</body>
</html>
展开全部
失去焦点可以用blur事件。
当元素失去焦点时触发 blur 事件。
这个函数会调用执行绑定到blur事件的所有函数,包括浏览器的默认行为。可以通过返回false来防止触发浏览器的默认行为。blur事件会在元素失去焦点的时候触发,既可以是鼠标行为,也可以是按tab键离开的
参数
fnFunctionV1.0
在每一个匹配元素的blur事件中绑定的处理函数。
[data],fnString,FunctionV1.4.3
data:blur([Data], fn) 可传入data供函数fn处理。
fn:在每一个匹配元素的blur事件中绑定的处理函数。
示例
描述:
触发所有段落的blur事件
jQuery 代码:
$("p").blur();
描述:
任何段落失去焦点时弹出一个 "Hello World!"在每一个匹配元素的blur事件中绑定的处理函数。
jQuery 代码:
$("p").blur( function () { alert("Hello World!"); } );
当元素失去焦点时触发 blur 事件。
这个函数会调用执行绑定到blur事件的所有函数,包括浏览器的默认行为。可以通过返回false来防止触发浏览器的默认行为。blur事件会在元素失去焦点的时候触发,既可以是鼠标行为,也可以是按tab键离开的
参数
fnFunctionV1.0
在每一个匹配元素的blur事件中绑定的处理函数。
[data],fnString,FunctionV1.4.3
data:blur([Data], fn) 可传入data供函数fn处理。
fn:在每一个匹配元素的blur事件中绑定的处理函数。
示例
描述:
触发所有段落的blur事件
jQuery 代码:
$("p").blur();
描述:
任何段落失去焦点时弹出一个 "Hello World!"在每一个匹配元素的blur事件中绑定的处理函数。
jQuery 代码:
$("p").blur( function () { alert("Hello World!"); } );
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询