小编Mat*_*ell的帖子

尝试将多个InfoWindows绑定到Google地图上的多个标记并失败

我的项目使用JSON提要来获取有关指定纬度和经度边界内地震的信息,基本上是制作一个方框.我获取此信息并将所有结果转换为Google地图上的标记.我需要每个标记也显示一些额外的信息,所以我试图使用内置的InfoWindow对象,这样当你点击一个标记时,你打开工具提示,其中包含与该标记相关的一些信息.然而,我发现无论我点击什么标记,同一个infowindow总是出现在该组的同一个标记之上,我相信它总是在我的循环中创建的最后一个infowindow.这是代码.

$.getJSON(url, function(json) {
                    for(var i = 0; i < json.earthquakes.length; i++)
                    {
                        var pos = new google.maps.LatLng(json.earthquakes[i].lat, json.earthquakes[i].lng);
                        var info = json.earthquakes[i].lat + ", " + json.earthquakes[i].lng;
                        var marker = new google.maps.Marker({
                            map: map, 
                            position: pos,
                            title: json.earthquakes[i].eqid
                        })
                        var tooltip = new google.maps.InfoWindow({
                            content: info
                        })
                        google.maps.event.addListener(marker, 'click', function() {
                            tooltip.open(map, marker);
                        });
                        markers.push(marker);
                        tooltips.push(tooltip);
                    }               
                });
Run Code Online (Sandbox Code Playgroud)

markers是地图上所有标记对象的数组,工具提示是另一个用于存储infowindows对象的数组.他们是全球性的.

javascript ajax json google-maps

12
推荐指数
1
解决办法
1万
查看次数

CSS!重要规则不会覆盖文本对齐

a {
        font-size: 8pt;
        text-align: left !important;
        text-decoration: none;
  }

.main {
        text-align: center;
  }

 <div class="main">
    <a href="#new_york_city">New York City</a><br />
    <a href="#long_island">Long Island</a><br />
    <a href="#upstate">Upstate New York</a><br />
</div>
Run Code Online (Sandbox Code Playgroud)

这是我拥有的一个紧凑版本,对我来说,使用Firefox 5,链接仍以STILL为中心,即使我正在使用!重要的是"text-align:left".令人困惑和恼人,因为我认为!重要的是最高的特异性并超越所有其他规则.

这有什么不对?

html css layout css-specificity

6
推荐指数
1
解决办法
2万
查看次数

我可以添加叠加层,但我无法删除它(jQuery)

此功能为整个浏览器屏幕添加具有以下属性的叠加层,

$('a.cell').click(function()    {
    $('<div id = "overlay" />').appendTo('body').fadeIn("slow");
});

#overlay
{
background-color: black;
width: 100%;
height: 100%;
position: fixed;
top: 0;
left: 0;
display: none;
z-index: 100;
opacity: 0.5;
}
Run Code Online (Sandbox Code Playgroud)

这个函数应该删除它.

$('#overlay').click(function()  {
    $(this).fadeOut("slow").remove();
});
Run Code Online (Sandbox Code Playgroud)

但它似乎绝对没有任何东西,现在我的页面被黑色过度覆盖了.删除有什么问题?

html javascript css jquery overlay

2
推荐指数
1
解决办法
7403
查看次数

我想将两列组合成一个新列,但仅当一列不为空时,然后按该新列排序.(MySQL的)

假设我有两个列,city和sitename.

City        Sitename
Boston      Hynes Convention Center 
Baltimore   The Sheraton 
NYC         Times Square
            Applebees 
Tuoson       
Beijing     
            My Backyard
Run Code Online (Sandbox Code Playgroud)

我故意将这些字段中的一些字段留空,这就是原因.当我使用PHP输出这些信息时,我希望它以{city} - {sitename}的形式出现,但仅限于它们都不是空白的.如果其中任何一个是空白的,那么我只想让它显示{city}或{state},无论哪个.然后,一旦我有了这个组合(或非组合)值的新列,我想通过这个新的列A - Z对我的数据进行排序.所以最后它应该看起来像这样......

City         Sitename                  Combined
             Applebees                 Applebees
Baltimore    The Sheraton              Baltimore - The Sheraton
Beijing                                Beijing
Boston       Hynes Convention Center   Baltimore - Hynes Convention Center
             My Backyard               My Backyard
NYC          Times Square              NYC - Times Square
Tuoson                                 Tuoson
Run Code Online (Sandbox Code Playgroud)

我已经合并并重新命名了列并完成了排序,但尝试添加条件和案例让我挠头.

哦,这不是表格更改,这是我想要检索数据的方式.所以声明应该是......

"SELECT*FROM table ..."

php mysql sql sql-order-by

2
推荐指数
1
解决办法
581
查看次数