$('.talk').on('click', function (e) {
var $this = $("div#report");
console.log($this.offset());
var x = $this.offset();
if ($this.is(":hidden")) {
$this.css({left: x.left, top: x.top}).fadeIn();
return false;
}
$this.fadeOut();
return false;
});
需求是 让 #report 的div 出现在 class 为 talk 附近
console.log($this.offset()); 打印结果
Object {top: 800, left: 0}
class 为 talk 的元素 在页面最右边 靠近滚动条,为毛 这个left 是0
怎样让#report 定位在 talk 附近
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<title>jQuery</title>
<style>
.talk{
position: absolute;
right: 10px;
top: 10px;
}
.hide{
display: none;
}
</style>
<script type="text/javascript" src="js/jquery-1.8.3.min.js"></script>
<script type="text/javascript">
$(function(){
$('.talk').on('click', function (e) {
var report = $("div#report");
var offset = $(this).offset();
if (report.is(":hidden")) {
report
.css({
'left': offset.left,
'top': offset.top +report.height() ,
'position':'absolute'
})
.fadeIn();
return false;
}
report.fadeOut();
});
});
</script>
</head>
<body>
<div class="talk"><button>talk</button></div>
<div id="report" class="hide"><button>talk1</button></div>
</body>
</html>
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。