首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >DocumentFragment和Google

DocumentFragment和Google
EN

Stack Overflow用户
提问于 2013-07-27 09:20:00
回答 1查看 222关注 0票数 0

我有一个站点,它使用Google实用程序库的组合;markerWithLabel和markerClusterPlus。

markerWithLabel操纵DOM将标签放在地图上。我的问题是,这是非常昂贵的时间和CPU方面。

我想知道是否有一种方法可以同时缓存对DOM的写入和刷新它们,以减少重绘,并有望提高性能。

我在下面添加了这段代码,以说明我目前是如何工作的。新的标记是为添加到地图中的每一个项目重新绘制的部分。可能是最糟糕的方法,一次一个。

代码语言:javascript
复制
$.rMap.ready( function() {
    per.mapRM = JSONH.unpack(per.mapRM);
    var markers = [];
    for (var i = 0, mlen = per.mapRM.length; i < mlen; ++i) {
        bubble_color = colorArray[parseInt(per.mapRM[i].b, 10)];
        var marker = new MarkerWithLabel({
            position: new google.maps.LatLng(parseFloat(per.mapRM[i].lt),parseFloat(per.mapRM[i].ln)),
            map: $.rMap.map,
            draggable: false,
            raiseOnDrag: false,
            icon: {},
            labelContent: '<div id="rental-marker-'+ per.mapRM[i].id+'" class="marker-for-rent">'+
            '<span class="point_border"></span><span class="point point_'+ bubble_color +
            '"></span><span class="bubble bubble_'+ bubble_color +
            '">$'+ per.mapRM[i].r+'</span>'
        });
        markers.push(marker);
    }

    var markerClusterer = new MarkerClusterer($.rMap.map, markers, {
        averageCenter: true,
        ignoreHidden: true,
        printable: true,
        maxZoom: 14
    });         
 });

例如,我正在考虑使用documentFragments,还是我在这里找错了树?

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-07-27 10:28:49

在创建$.rMap.map对象时,是否尝试删除参数"map: MarkerWithLabel“?

我认为markerClusterer应该处理这个问题,看起来您是在要求地图渲染所有这些内容(在markerClusterer完成简化工作之前)。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17896233

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档