在网上搜索了一段时间后,我找不到任何像这样的地址:
宾夕法尼亚大街东南1200号
华盛顿,哥伦比亚特区,20003年
并将其转换为可点击的链接:
http://maps.google.com/maps?f=q&source=s_q&hl=en&q=1200+Pennsylvania+Ave+SE,+Washington,+District+of+Columbia,+20003&sll=37.0625,-95.677068&sspn=44.118686,114.169922&ie=UTF8&cd=1&geocode=FT5MUQIdIDlp-w&split=0&ll=38.882147,-76.99017&spn=0.01064,0.027874&z=16&iwloc=A
jQuery或PHP是首选或者任何有用的信息。
我知道我来得太晚了,但我想为了子孙后代,我应该有所贡献。
我写了一个简短的jQuery函数,将自动将任何<地址>标记转换为谷歌地图链接。
点击这里查看演示。
$(document).ready(function () {
//Convert address tags to google map links - Michael Jasper 2012
$('address').each(function () {
var link = "<a href='http://maps.google.com/maps?q=" + encodeURIComponent( $(this).text() ) + "' target='_blank'>" + $(this).text() + "</a>";
$(this).html(link);
});
});
奖金:
我还遇到过一种需要从链接中生成嵌入式地图的情况,尽管我想与未来的旅行者分享:
查看完整演示
$(document).ready(function(){
$("address").each(function(){
var embed ="<iframe width='425' height='350' frameborder='0' scrolling='no' marginheight='0' marginwidth='0' src='https://maps.google.com/maps?&q="+ encodeURIComponent( $(this).text() ) +"&output=embed'></iframe>";
$(this).html(embed);
});
});
2016年2月,:
我需要这样做基于客户端输入的数据库值,没有一个长/长生成器。谷歌最近很喜欢拉特/长。以下是我所学到的:
1
链接的开头是这样的:
https://www.google.com/maps/place/
2
然后写上你的地址:
用“+”代替任何空格。
在城市的前面和后面加上逗号。
包括邮政/邮编和省/州。
将任何#替换为空。
将任意++或++++替换为单个+
3.
把地址放在“/”后面
4
然后在最后加上斜杠。
注意:结尾的斜杠很重要。在用户单击链接后,谷歌继续执行并向URL追加更多内容,并且在这个斜杠之后执行。
这个问题的工作示例:
https://www.google.ca/maps/place/1200+Pennsylvania+Ave+SE,+Washington,+DC+20003/
我希望这对你有所帮助。
我有一个类似的问题,我需要为站点上的每个地址(每个地址都包装在一个地址标签中)完成此操作。这一点jQuery对我有用。它会抓取每个<address>标签,并将其包装在一个谷歌映射链接中,其中包含标签所包含的地址!
$("address").each(function(){
var address = $(this).text().replace(/\,/g, '');
var url = address.replace(/\ /g, '%20');
$(this).wrap('<a href="http://maps.google.com/maps?q=' + url +'"></a>');
});
工作示例——> https://jsfiddle.net/f3kx6mzz/1/