小编Vol*_*der的帖子

在谷歌地图上加载100-200K标记

目前我正在使用Google Maps v.3 API在地图上绘制标记.我总共有大约500个标记.

出于显示目的,我在浏览器的客户端使用此工具使用markerCluster和组标记.

但是,我计划扩大位置数量,并假设它可以快速增长到100K甚至200K.

我做了一些压力测试,并意识到当前的解决方案基本上杀死了浏览器和大约10-20K标记.

所以我的问题是什么是绘制许多标记的最佳方法(不是必要的谷歌地图)?

我读过类似问题的帖子,例如:

在Google地图中显示许多标记

谷歌地图上太多针脚的最佳解决方案

基本上人们建议使用一些clusterer用于显示目的,我已经使用过.

或者使用融合表来检索数据,这不是一个选项,因为数据必须保留在我的服务器上.此外,我假设显示功能受到融合表的限制.

我正在考虑实现以下场景:

  • 在每个页面上缩放/加载 - 发送带有显示视图边界的ajax请求,在所有边上添加约30%并检索仅在此地理区域中的标记.如果用户缩小,则会添加30%,以便我可以快速显示其他标记,然后在背景中进一步后退(其他地方)

  • 当标记的数量超过50时 - 我计划将聚类应用于显示目的.但由于javascript中的markerCluster非常慢,即不是markerCluster而是谷歌本身,因为它仍然应用所有标记的位置,我打算通过在大约15*15网格中分割显示的地图的边界来在服务器端进行聚类然后将标记放入特定的单元格中,然后基本上将内部标记的数量发送给客户端集群(例如,用于热图).然后将群集显示为标记.

你能不能给一些有相似之处的人提供一些见解.一般来说它是否有意义.或者这是一个愚蠢的方法,因为ajax请求将在每个地图缩放和移位时发送到服务器,并基本上使冗余请求超载服务器?

我想要实现的是在大型标记数据集上的良好用户体验(在不到2秒的时间内加载).

maps google-maps google-maps-markers markerclusterer

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

Onclick javascript停止在Chrome中提交表单

我有以下表格:

<form class="custom" method="post" action="/checkout/submit/">
...
    <div class="row">
        <div class="ten mobile-three columns" style="margin-top: 20px;">
            <input id="previous-btn" style="margin-top: 10px;" type="submit" class="button radius" name="previous" value="Zurück" />
            <input id="next-btn" style="margin-top:10px;" type="submit" class="button radius success" name="next" value="Bestätigen" onclick="disableButtons(this);"/>
            <input style="margin-top:10px;" type="hidden" name="next" value="Bestätigen" />
            &nbsp;&nbsp;<img id="ajax-img" style="display:none;" src="/img/ajax-loader.gif" />
        </div>
    </div>
</form>
...
<script type="text/javascript">
function disableButtons(elem)
{
    $('#previous-btn').prop('disabled', true);
    $('#next-btn').prop('disabled', true);
    $('#ajax-img').css('display','inline');
    return true;
}
</script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

使用onclick我禁用按钮并在提交表单时显示ajax加载图片.这样用户就不会再点击两次提交.

问题是在Chrome中,表单根本没有提交.所以onlclick函数工作正常,但就是这样.在FF和IE中一切正常 - 在开始时javascript对按钮进行更改,然后表单提交的正常流程完成.

不胜感激为什么它在Chrome中破解了.谢谢!

javascript forms google-chrome submit

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

R从列表中提取没有前缀的数据帧

我在列表中放置了一个数据框.然后当尝试将其提取回来时 - 我得到所有列名称都以此数据框的列表键为前缀,有没有办法提取数据帧与最初传递完全一样?

cols<-c("column1", "Column2", "Column3")
df1<-data.frame(matrix(ncol = 3, nrow = 1))
colnames(df1)<-cols
df1

result<-list()
result['df1']<-list(df1)

newdf1<-as.data.frame(result['df1'])
newdf1
Run Code Online (Sandbox Code Playgroud)

得到结果(列名以df1为前缀):

> cols<-c("column1", "Column2", "Column3")
> df1<-data.frame(matrix(ncol = 3, nrow = 1))
> colnames(df1)<-cols
> df1
  column1 Column2 Column3
1      NA      NA      NA
> 
> result<-list()
> result['df1']<-list(df1)
> 
> newdf1<-as.data.frame(result['df1'])
> newdf1
  df1.column1 df1.Column2 df1.Column3
1          NA          NA          NA
Run Code Online (Sandbox Code Playgroud)

当然,我可以手动删除前缀,但可能有一个正确的方法来执行此操作.谢谢!

r list columnname dataframe

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

Windows 7上的Mysql时区未更新

我正在使用Windows 7

Mysql 5.5.15

赛跑 set time_zone = "Europe/Moscow";

我明白了 Error Number: 1298 Unknown or incorrect time zone: 'Europe/Moscow'

我使用最新的http://dev.mysql.com/downloads/timezones.html更新时区表, 但在mysql服务器启动后,时区表仍为空,命令仍然返回相同的错误.

有没有人遇到类似的问题?

mysql timezone windows-7-x64

5
推荐指数
1
解决办法
3319
查看次数

Chrome扩展程序在ajax更改时运行内容脚本

我有一个chrome扩展,它在网站上进行了一些更改(编辑评论).

在网站上最近的更改(网站不是我的)之后 - 注释块使用ajax加载(在它是整个页面重新加载的简单发布请求之前).

现在,如果我第一次加载页面 - 内容脚本有效,但是当我转到下一页时,说第2页 - 使用ajax添加注释,扩展脚本不再运行.所以评论不会改变我想要的方式.

有没有简单的方法来监听页面更改DOM并再次应用扩展脚本?

在清单文件中我有:

{
  "name": "Name",
  "version": "1.0",
  "description": "Description",
  "icons": {"16":"16.png",
            "48":"48.png",
            "32":"32.png",
            "128":"128.png"},
  "browser_action": {
    "default_title": "Default title",
    "default_icon": "48.png",
    "popup": "popup.html"
  },
  "permissions": [
    "tabs",
    "http://www.site.com/*",
    "notifications",
    "unlimitedStorage"
  ],

  "options_page": "options.html",
  "background_page": "background.html",

  "content_scripts": [
                {
                    "matches": ["http://www.site.com/*","https://www.site.com/*"],
                    "js": ["jquery-1.7.1.min.js","content.js"],
                    "run_at": "document_end"
                }]
}
Run Code Online (Sandbox Code Playgroud)

ajax google-chrome google-chrome-extension

4
推荐指数
1
解决办法
4812
查看次数

CSS文本填充差异Firefox vs Chrome等

如果有人可以提供帮助,我会很感激这一点,因为我花了整整一个晚上没有结果这个问题.

我有一个网站,我想在每篇文章后修改标签外观.问题是firefox(版本14.0.1)为文本提供了更小的高度(总<a>高度为15px,包括1px底部填充),而chrome和rest浏览器的高度为19px.所以差异是4px.因此 - "标记孔"显示在不同的级别.对于其他浏览器,FF略低于垂直中间,高于中间.

我拍了一张照片让问题更容易: 在此输入图像描述

我有一般的CSS重置,所以不同的浏览器行为相似.但看起来并非一切都包含在那里.有谁知道这会导致什么?

css firefox height google-chrome

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