如何以编程方式展开/折叠归因?

时间:2016-04-01 03:25:14

标签: javascript legend openlayers-3 expand

我添加了一个属性作为图例,可以手动展开或折叠,但如何以编程方式进行操作?

2 个答案:

答案 0 :(得分:1)

答案 1 :(得分:0)

找到按钮并点击它。

var fireClick = function(node) {
  if (typeof MouseEvent === 'function') {
    var mevt = new MouseEvent('click', {
      view: win,
      bubbles: false,
      cancelable: true
    });
    node.dispatchEvent(mevt);
  } else if ( doc.createEvent ) {
    // Fallback
    var evt = doc.createEvent('MouseEvents');
    evt.initEvent('click', false, false);
    node.dispatchEvent(evt);
  } else if (doc.createEventObject) {
    node.fireEvent('onclick') ;
  } else if (typeof node.onclick === 'function' ) {
    node.onclick();
  }
};

var map_element = document.getElementById('map');
var button = map_element.querySelector('div.ol-attribution button');

fireClick(button);