我不得不承认(可能从我之前的问题中可以看出)我对 Jquery 比较陌生。我懂一点 Java,但我的知识主要在于 CSS 和 HTML4/5。我正在做一个项目,我需要能够在地图上创建、移动和删除标记。我没有使用谷歌的 api 地图,而是将其设为自由形式,因此任何计划在理论上都可以奏效。然而到目前为止我遇到的问题是我的一个朋友在完成他的项目后把代码借给了我......我不完全理解我所看到的一些东西,我通常会问他,但他正在巡航(他真的把他的手机也留在了家里,所以没有人会打扰他)。
在第 9 行我不明白这个函数抓取器,它是抓取页面 html 还是位于页面上的函数?如果它确实从页面中获取数据,这是否意味着我必须重新创建该函数?主要问题是当我单击标记按钮创建一个新按钮时,它会锁定我的光标,但不允许我实际放置标记(就像事件没有被正确调用)。
此外,底部的 json 位......我认为 json 是一种完全独立的语言(独立)?
function newIssue(e)
{
var pos = $('#plan').offset();
var x = e.pageX - pos.left;
var y = e.pageY - pos.top;
var u = x/$('#plan').width();
var v = y/$('#plan').height();
$.get('/new/newIssue/14/' + u + '/' + v + '/' + e.data.kind + '/', function(data)
{
var x = eval(data);
var num = x.number;
Issue.push({id: num, u: u, v: v, repaired: false, kind: e.data.kind, timestamp: x.timestamp, detailed: true});
var n = insertIntoCluster(Issue[Issue.length - 1], Cluster, 10);
reclusterOnAddition(n);
if (e.data.kind == 'Repairable')
openIssue(num, true);
$('#plan-wrapper').css('cursor', 'move');
$('#plan').unbind('mousedown');
$("div[id^='m']").show();
panner.enable();
}, 'json');
}
<li><a href="javascript:prepNewIssue('Repairable')">Repairable</a></li>
我因为这样做而受到抨击,但我朋友的代码运行良好,我能够通过这种方式更好地理解它。基本上,您单击链接,它会在再次单击时将光标移至创建标记的位置,但是它会启用光标,但是当您再次单击时,不会创建任何内容,只是停留在“创建”循环中而没有创建。