我的代码
<html>
<head>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script type="text/javascript">
function process(e) {
alert("Hello! I am an alert box1!!");
e.hide();
};
$(document).ready(function() {
var p = $("#id1"); //jquery object
p.click(function() {
process(this); //line A
});
});
</script>
</head>
<body>
<p id=id1>If you click on me, I will disappear.</p>
</body>
</html>
单击时文本死亡不会消失,控制台报告错误:
TypeError:e.hide不是函数
但如果我更改为A行的代码,如下所示
<html>
<head>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script type="text/javascript">
function process(e) {
alert("Hello! I am an alert box1!!");
e.hide();
};
$(document).ready(function() {
var p = $("#id1"); //jquery object
p.click(function() {
process(p); //change this to p, Line A
});
});
</script>
</head>
<body>
<p id=id1>If you click on me, I will disappear.</p>
</body>
</html>
它有效!!!
我也尝试代码:
<html>
<head>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script type="text/javascript">
function process(e) {
alert("Hello! I am an alert box1!!");
e.style.visibility = "hidden";
};
$(document).ready(function() {
var p = $("#id1")[0]; //jquery object to dom object
p.addEventListener("click", function() {
process(this);
});
});
</script>
</head>
<body>
<p id=id1>If you click on me, I will disappear.</p>
</body>
</html>
它也有效。
您评论欢迎
答案 0 :(得分:1)
您可以使用console.log()
查看javascript如何处理您发送的内容。
执行console.log(this)
会在日志中显示:
<p id="id1">If you click on me, I will disappear.</p>
您可以看到的是纯DOM对象。
但是,console.log(p)
执行此操作会在日志中显示:
[p#id1, context: document, selector: "#id1"]
表示可以对其执行操作的jQuery对象。如果你想让jQuery从this
为你提取对象,请将你在jQuery中发送的内容包装起来:
function process(e){
alert("Hello! I am an alert box1!!");
$(e).hide(); // Wrap to convert DOM object.
};
$(document).ready(function(){
var p =$("#id1");//jquery object
p.click(function(){
process(this);//change this to p, Line A
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p id=id1>If you click on me, I will disappear.</p>