新的,所以请原谅脚趾踩踏,直到我明白了。
因此,我有一个脚本,该脚本允许从li中选择其他地图,但是该脚本阻止了另一个li的显示。 see it here是页面底部附近的地图选择器,请注意位于其下方一点的推荐词在其下方没有任何空白,如果选择了map块,则停止工作,请参见有效的推荐词块工作here
这是选择地图li的代码
var googlemapselector={
selectaddr:function($addrdiv, $li, $mapiframe){
if ($addrdiv.data('$lastselectedli'))
$addrdiv.data('$lastselectedli').removeClass('selected')
$li.addClass('selected')
window.frames[$mapiframe.attr('name')].location.replace($li.data('addr')) //load map address inside IFRAME
$mapiframe.data('$largemaplink').attr('href', $li.data('addr').replace('&output=embed', ''))
$addrdiv.data('$lastselectedli', $li)
},
init:function(addrwrapper, mapwrapper, persist){
jQuery(function($){ //on document.ready
var $mapdiv=$('#'+mapwrapper)
var $mapiframe=$mapdiv.find('iframe:eq(0)')
var $addrdiv=$('#'+addrwrapper)
var $lis=$addrdiv.find('ul.location:eq(0)').find('li')
var mapiframetarget=$mapiframe.attr('name')
var $largemaplink=$mapdiv.find('a.largermap') //ref link with class="largermap"
$mapiframe.data('$largemaplink', $largemaplink) //remember ref to largermap link
$lis.each(function(){
var $li=$(this)
var $address=$li.find('a[href^="https://www.google.com/maps"]') //find Google map links within LI
$address.each(function(){
var $addr=$(this)
$addr.attr({href:this.getAttribute('href')+'embed?', target:mapiframetarget}) //add 'embed?' to Google map link plus target attribute
$addr.click(function(e){
googlemapselector.selectaddr($addrdiv, $li, $mapiframe) //load Google map
e.preventDefault()
})
})
$li.data('addr', $address.eq(0).attr('href'))
if ($li.hasClass('selected')){
googlemapselector.selectaddr($addrdiv, $li, $mapiframe) //load Google map
$addrdiv.data('$lastselectedli', $li) //remember last selected LI
return
}
})
})
}
}
//parameters:
googlemapselector.init('addrcolumn', 'mapcolumn')
那是我正在使用的代码,我的问题是我是否可以添加一个类或id来强制脚本仅在addrcolum中搜索li。
谢谢您的帮助。如果我做错了,再次表示抱歉。