0
我需要遍歷AJAX響應,並在條件滿足時跳出事件處理程序。我無法使用此代碼:
$.each(response, function(i, v) {
// create mapbox object
var map = L.mapbox.map('map', v.map_embed_id, {
zoomAnimation: false
});
var polygonLayer = L.mapbox.featureLayer().loadURL('https://a.tiles.mapbox.com/v4/' + v.map_embed_id + '/features.json?access_token=abcde').addTo(map);
polygonLayer.on('ready', function() {
var layer = leafletPip.pointInLayer(latlng, polygonLayer, true);
if (layer.length) {
// this is where I need to break out of $.on
// and the current $.each iteration
}
});
});
我知道return false
會跳出$.each
迭代的,但是這是比較困難的,因爲我需要打出來的$.on
事件處理程序。我能做什麼?也許我可以使用trigger
嗎?
你確定你需要爲'each'的每次迭代綁定事件嗎?這看起來有點可疑,而且可能是我會解決的。 – Utkanos
可以使用[stop propagation](http://api.jquery.com/event.stopimmediatepropagation/)作爲事件處理程序,併爲每個事件返回「false」 –
爲什麼你要綁定一個準備好的事件?你認爲它有什麼作用? –