功能/用途:在论坛发贴/回贴时,可插入地图信息并标注位置,房地产或其它对于位置描述有详细需求的论坛,非常适用

插件演示地址:
http://www.zzgo.net/bbs/showtopic-5836.aspx发贴效果(基于51ditu.com的API开发制作,让你的论坛可与专业地图站点相媲美)
[attach]8504[/attach]
适用程序:Discuz!NT2.x
插件支持:
www.51ditu.com安装方法:一、登录论坛后台管理
1. 论坛 -> 贴子相关-> Discuz!NT代码 -> 添加Discuz!NT代码
i. 标签:map
ii. 替换内容:
<div id="maps{RANDOM}" style="position:relative; width:100%; height:350px; border:black solid 1px;"><div align="center" style="margin:12px;"><a href="http://api.51ditu.com/docs/mapsapi/help.html" target="_blank" style="color:#D01E14;font-weight:bolder;font-size:12px;">看不到地图请点这里</a></div></div><script language="javascript">var maps = new LTMaps("maps{RANDOM}" );maps.cityNameAndZoom("baoding",{4});var point = new LTPoint({2},{3});var marker = new LTMarker(point);maps.addOverLay(marker);var text=new LTMapText(point,[20,-2]);text.setLabel(" <b>{1}</b> ");text.setBackgroundColor("#FFFF00");maps.addOverLay(text);var control = new LTStandMapControl();maps.addControl(control);maps.handleKeyboard();maps.handleMouseScroll();maps.moveToCenter(new LTPoint({2},{3}));</script>
. iii. 例子:随意填写
iv. 解释:随意填写
v. 参数个数:4
vi. 嵌套次数:1
vii. 参数描述:留空即可
viii. params默认值:留空即可
2. 全局 -> 常规选项 -> 搜索引擎优化
i. [其他头部信息:] 中 添加:
<script language="javascript" src="http://api.51ditu.com/js/maps.js"></script>
二、修改编辑器模板(templates/default/_editor.htm):
1. 找到你想插入 [标注位置] 按钮的地方,插入以下代码:(不明白,请查看
五、补充/解释)
<!--引入地图JavaScript开始-->
<script language="javascript" src="http://api.51ditu.com/js/ezmarker.js"></script>
<script language="javascript">
function SetForm(point,zoom){
var text=prompt("请输入此标注的文字注释","");
insertText('[map='+point.getLongitude()+','+point.getLatitude()+','+zoom+']'+text+'[/map]');
}
function SelectDisplay(){
var s=document.getElementsByTagName('select');
for(var i=0;i<s.length;i++)s[i].style.display='';
}
function SelectHidden(){
var s=document.getElementsByTagName('select');
for(var i=0;i<s.length;i++)s[i].style.display='none';
}
var ez=new LTEZMarker("maps");
ez.setDefaultView(new LTPoint(坐标X轴,坐标Y轴),1);
ez.setSearch(false);
ez.setPlaceList(false);
LTEvent.addListener(ez,"mark",SetForm);
LTEvent.addListener(ez,"open",SelectHidden);
LTEvent.addListener(ez,"close",SelectDisplay);
</script>
<!--引入地图JavaScript结束-->
注:
坐标的X轴与Y轴是地图显示时的初始位置,比如,如果你希望点击 [标注位置] 按钮后,首先弹出北京地图,
如何得到这个坐标: 你可以在我的论坛发个贴子(
www.zzgo.Net),点击编辑器上的 [标注位置] 按钮,标注出你希望的初始位置,然后会有对应的Discuz代码插到编辑器里,比如:[map=
11639762,
3990806,1]北京[/map],标红的两个数,就是你想要的坐标了,将它填入到上面的程序段中就行了
例子:ez.setDefaultView(new LTPoint(11639762,3990806),1);
三、保存模板 -> 生成,你的地图功能就可以用了!
四、08-03-14日修正了一个错,还有问题,请用论坛短消息联系我,修正后本人会更新此贴,谢谢!--------------------------------------------------------------------五、补充/解释: ● 对于
二.1 的解释 :
原文:找到你想插入 [标注位置] 按钮的地方,插入以下代码
比如我想把 [标注位置] 按钮插入到下图这个位置
[attach]8505[/attach]
这时就需要切换到对应位置的HTML代码处,将 二.1 的代码贴进去,就OK了