0

我要疯了。我使用以下代码从 Wordpress 自定义字段(输入类型)中获取值(它是家庭地址):

<?php $dudi=get_post_meta($post->ID, 'addr', true); ?>

很好!现在我必须“传递”这个变量 $dudi 给一个 jQuery 函数(它是gMap,用于显示谷歌地图):

$(function() {
    $("#map").gMap({ markers: [
        { address: '<?php echo $dudi; ?>',
          html: "blah blah<br>blah blah" }
        ],
  zoom: 10 });  
});

现在使用标签<div id="map"></div>gMap 应该在指定地址上显示带有标记的地图(变量 $dudi 中的值)但不起作用!请注意,如果我手动编写地址(代替<?php echo $dudi; ?>),它可以在带有错误的 Chrome 上运行(单击标记并移动地图时会出现奇怪的效果)并且不适用于 IE 和 Firefox

不知道...我已经尝试过任何方式,但无事可做...明天我需要这个!:(希望你们!!

更新:天哪!我要采取措施,因为不清楚问题是由变量的传递还是由 html/css 冲突引起的。所以目前我已经绕过变量在 jQuery 函数中手动编写了地址。好吧,经过多次头痛后,我发现地图与 css 发生冲突:

max-width: 100%;

事实上,当我评论那条线时,地图显示正确。

现在,我恢复了变量,现在地图在任何浏览器(又名灰色背景)上都不起作用,但它正确显示了缩放推子,并且在浏览器控制台中,我在文件 main.js 中有两个错误。 TypeError: a is null不幸的是我不知道这个文件,我无法修复一些代码。希望你们……再一次!

如果需要的话...

第一个错误

H(ff,hb);var Kh=256/360,Lh=256/(2*Math.PI);ff.prototype.fromLatLngToPixel=function(a,b){var c=128+a.lng()*Kh,d=Db(Math.sin(Xb(a.lat())),-0.9999,0.9999),d=128+0.5*Math.log((1+d)/(1-d))*-Lh,f=1<<b;return new r(u(c*f),u(d*f))};

第二个错误

Oh(Sj,"arrow",1);function qi(a,b,c){!a.lat&&!a.lon&&(a=new P(a.y,a.x));this.Aa=a;this.Nu=i;this.na=0;this.N=this.mb=!1;this.Oo=[];this.V=[];this.Ra=Mj;this.Mg=this.cl=i;this.Ub=!0;this.Dg=this.rf=!1;this.g=i;if(b instanceof Qj||b==i||c!=i)this.Ra=b||Mj,this.Ub=!c,this.ha={icon:this.Ra,clickable:this.Ub};else{b=this.ha=b||{};this.Ra=b.icon||Mj;this.mv&&this.mv(b);if(b.clickable!=i)this.Ub=b.clickable;if(b.isPng)this.rf=!0}b&&Ob(this,b,"id,icon_id,name,description,snippet,nodeData".split(","));this.Zu=Tj;if(b&&b.getDomId)this.Zu=
4

3 回答 3

2

“Chrome 用 OK 标记显示地图!!!而 Firefox 和 IE 什么也不显示(灰色背景等)”

如果 Ennui 的解决方案在 Chrome 上运行良好,请检查其他浏览器控制台 - 它们应该会输出某种错误。当 GoogleMaps 显示“灰色背景”而不是地图时,通常会发生这种情况。

于 2012-11-15T21:31:54.043 回答
0

尝试为 img 标签找到 css stype max-width: none; 并将其替换为: max-width: none;

于 2012-12-06T18:52:10.123 回答
0

一个快速而肮脏的解决方案是在隐藏的 div 中的页面某处回显 $dudi 变量。例如:

<p style="display:none" id="dudi">
  <?php echo get_post_meta($post->ID, 'addr', true); ?>
</p>

然后在你的 jQuery 中:

var dudi = $('p#dudi').text();

没有时间对此进行测试,但我认为它应该适合您的目的。

于 2012-11-15T20:34:54.647 回答