我在这里发布的问题与发布的问题here有些类似,但我试图在完成ajax请求时设置属性。
该页面显示'ul li'中的所有反馈,每个反馈都有两个投票元素'voteup'和'votedown'
现在当用户点击voteup元素时,使用jquery的ajax记录投票(即下面的投票函数)
响应文本填充在'divProcessing'div。
中点击元素投票或投票时,我将投票功能称为
vote('{$feedback.id},'voteup');
这是我写的代码
function vote(action,feedbackId) { var $divEmail = $('#divProcessing'); $.ajax({ type: 'get', url: 'index.php?client='+$.getUrlVar('client')+'&page=ajax', data: {option: 'vote', action: action, feedbackId: feedbackId}, dataType: 'html', success: function(data,evt) { $divEmail.html(data) .css({top:evt.pageY, left:evt.pageX}) .show(); }, beforeSend: function(){$divEmail.addClass('show_loading_in_center')}, complete: function(){$divEmail.removeClass('show_loading_in_center')} }); }
这里的一切工作正常,但我需要在点击投票元素(或鼠标位置附近)附近显示“divProcessing”。
请帮我显示正在点击的img标记旁边的divprocessing。
我希望我能够清楚地解释我的问题。
感谢
答案 0 :(得分:1)
您可能希望将元素的CSS position
设置为fixed
。这将使元素相对于屏幕定位,无论元素在何处定义以及页面如何滚动。这可以通过切换:
.css({top:evt.pageY, left:evt.pageX})
要:
.css({position:'fixed', top:evt.screenY, left:evt.screenX})