要获得当前div的顶部和左侧,请点击此处。
<div class="channel" onclick="highlight_channel();">
<p>Pax TV, 8am (Lima, Peru, in Spanish)</p>
</div>
function highlight_channel() {
var highlight_top = $(this).position().top;
var highlight_left = $(this).position().left;
alert(highlight_top);
var clear_highlight = document.getElementById("highlight");
clear_highlight.parentElement.removeChild(clear_highlight);
$("#page").append('<div id="highlight" class="channel selected" style="top:'+highlight_top+'left='+highlight_left+'></div>');
}
这似乎没有得到信息。
答案 0 :(得分:1)
尝试offset()而不是位置()。
答案 1 :(得分:1)
试试这个:
function highlight_channel() {
offs = $(this).offset(); // <-- caching for better performance.
var highlight_top = offs.top;
var highlight_left = offs.left;
alert(highlight_top);
$("#highlight").replaceWith('<div id="highlight" class="channel selected" style="top:'+highlight_top+'left='+highlight_left+'></div>'); // <-- replacing #highlight the jQuery way
}
答案 2 :(得分:1)
如果您已经在使用jQuery,为什么不使用jQuery click方法:
$('.channel').click(function() {
var highlight_top = $(this).position().top;
var highlight_left = $(this).position().left;
alert(highlight_top);
var clear_highlight = document.getElementById("highlight");
clear_highlight.parentElement.removeChild(clear_highlight);
$("#page").append('<div id="highlight" class="channel selected" style="top:'+highlight_top+'left='+highlight_left+'></div>');
});
答案 3 :(得分:0)
你错过了“;”我认为。
$("#page").append('<div id="highlight" class="channel selected" style="top:'+highlight_top+'; left='+highlight_left+'; ></div>');
祝你好运。