我有以下代码,此代码在用户点击链接时运行。但是,当用户访问页面以加载默认地址时,我还需要最初加载它。所以在这段代码之后我有$('。viewmap')。click();
问题在于,当我这样做时,针对具有类视图的每个链接运行单击操作。是否可以使用默认值为0的mapid运行此代码一次,这样我可以重复使用此函数进行地图的默认加载,然后如果有人用viewmap类点击其中一个链接?或者我是否必须创建单独的功能?一个用于默认加载,一个用于单击操作?
$('.viewmap').click(function() {
var id = $('#id').text();
var mapid = $(this).attr('title');
$.ajax({
cache:false,
url:'path/to/script'
dataType:'json',
success: function(data) {
$('#currmap').gMap(
{
latitude : data.lat,
longitude : data.lon,
address : data.address,
maptype : 'ROADMAP',
zoom : 8,
markers:[{
latitude : data.lat,
longitude : data.lon,
address : data.address,
html : data.display
}]
}
);
}
});
});
答案 0 :(得分:1)
试试这个:
$('.viewmap:first').click();
答案 1 :(得分:1)
尝试将处理代码放入其自己的功能中。然后,您可以直接在页面加载时调用它,也可以在元素上发生单击事件时调用它。试试这个:
function updateMap() {
var id = $('#id').text();
var mapid = $(".viewmap").attr('title');
$.ajax({
cache:false,
url:'path/to/script'
dataType:'json',
success: function(data) {
$('#currmap').gMap({
latitude : data.lat,
longitude : data.lon,
address : data.address,
maptype : 'ROADMAP',
zoom : 8,
markers:[{
latitude : data.lat,
longitude : data.lon,
address : data.address,
html : data.display
}]
});
}
});
}
updateMap();
$('.viewmap').click(updateMap);
这样就可以避免必须手动触发导致问题的元素上的click事件。