一、我们都知道所以图层都继承自layer图片,在layer图层并没有定义该方法,也就说该方法是子类自己定义的,并不是每个图层都有该方法,像CSVLayer图层有setVisibility(isVisible)方法与上面的方法效果是类似的
二、参数介绍
ids:指的(ArcGISDynamicMapServiceLayer)中所有子图层的Id,是一个数组类型,
doNotRefresh:表示是否刷新,该参数是可选参数,默认是true
三、实例
var html = ""
var infos = layers.layerInfos;
for (var i = 0, length = infos.length; i < length; i++) {
var info = infos[i];
//图层默认显示的话就把图层id添加到visible
if (info.defaultVisibility) {
visible.push(info.id);
}
//输出图层列表的html
html = html + "<div><input id='" + info.id + "' name='layerList' class='listCss' type='checkbox' value='checkbox' onclick='setLayerVisibility()' " + (info.defaultVisibility ? "checked" : "") + " />" + info.name + "</div>";
}
//设置可视图层
chinaCollagelayer.setVisibleLayers(visible);
//在右边显示图层名列表
dojo.byId("toc").innerHTML = html;