效果

初始

点击后

参考代码

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <title>Layer group example</title>
  5. <script src="js/jquery-1.11.1.min.js"></script>
  6.  
  7. <link rel="stylesheet" href="css/bootstrap.min.css">
  8. <script src="js/bootstrap.min.js"></script>
  9.  
  10. <style>
  11. #layertree li > span {
  12. cursor: pointer;
  13. }
  14. </style>
  15.  
  16. <style>
  17. ul,ol {
  18. list-style: none
  19. }
  20. </style>
  21.  
  22. </head>
  23. <body>
  24.  
  25. <div id="layertree" class="span6">
  26. <span>图层列表</span>
  27. <ul class='layer-list'>
  28. <li><input type="checkbox"><span>Food insecurity layer</span>
  29. <fieldset>
  30. <input class="opacity" type="range" min="0" max="1" step="0.01"/>
  31. </fieldset>
  32. </li>
  33.  
  34. <li><input type="checkbox"><span>World borders layer</span>
  35. <fieldset>
  36. <input class="opacity" type="range" min="0" max="1" step="0.01"/>
  37. </fieldset>
  38. </li>
  39. </ul>
  40. </div>
  41. <script>
  42.  
  43. $('#layertree li > span').click(function() {
  44. $(this).siblings('fieldset').toggle();
  45. }).siblings('fieldset').hide();
  46.  
  47. </script>
  48. </body>
  49. </html>

其中:

1. <html>标签<ul>表示无序列表;<ol>比奥斯有序列表

2. 以下格式,表示每一小项的前边没有默认的黑点

  1. ul,ol {
  2. list-style: none
  3. }

实例

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <title>Layer group example</title>
  5. <script src="js/jquery-1.11.1.min.js"></script>
  6.  
  7. <link rel="stylesheet" href="css/bootstrap.min.css">
  8. <script src="js/bootstrap.min.js"></script>
  9.  
  10. <link rel="stylesheet" href="css/ol.css" type="text/css">
  11. <script src="js/ol.js"></script>
  12.  
  13. <style>
  14. #layertree li > span {
  15. cursor: pointer;
  16. }
  17. </style>
  18. <style>
  19. ol,ul{
  20. list-style:none
  21. }
  22. </style>
  23. </head>
  24. <body>
  25. <div class="row-fluid">
  26. <div id="map" class="map"></div>
  27.  
  28. <div id="layertree" >
  29. <span>图层列表</span>
  30. <ul> <!--无序列表-->
  31. <li><span>Food insecurity layer</span>
  32. <fieldset id="layer0">
  33. <input class="visible" type="checkbox"/>
  34. <input class="opacity" type="range" min="0" max="1" step="0.01"/>
  35. </fieldset>
  36. </li>
  37.  
  38. <li><span>World borders layer</span>
  39. <fieldset id="layer1">
  40. <input class="visible" type="checkbox"/>
  41. <input class="opacity" type="range" min="0" max="1" step="0.01"/>
  42. </fieldset>
  43. </li>
  44. </ul>
  45. </div>
  46. </div>
  47.  
  48. <script>
  49. var map = new ol.Map({
  50. layers: [
  51. new ol.layer.Tile({
  52. source: new ol.source.MapQuest({layer: 'sat'})
  53. }),
  54. new ol.layer.Group({
  55. layers: [
  56. new ol.layer.Tile({
  57. source: new ol.source.TileJSON({
  58. url: 'http://api.tiles.mapbox.com/v3/' +
  59. 'mapbox.20110804-hoa-foodinsecurity-3month.jsonp',
  60. crossOrigin: 'anonymous'
  61. })
  62. }),
  63. new ol.layer.Tile({
  64. source: new ol.source.TileJSON({
  65. url: 'http://api.tiles.mapbox.com/v3/' +
  66. 'mapbox.world-borders-light.jsonp',
  67. crossOrigin: 'anonymous'
  68. })
  69. })
  70. ]
  71. })
  72. ],
  73. target: 'map',
  74. view: new ol.View({
  75. center: ol.proj.fromLonLat([37.40570, 8.81566]),
  76. zoom: 4
  77. })
  78. });
  79.  
  80. function bindInputs(layerid, layer) {
  81. var visibilityInput = $(layerid + ' input.visible');
  82. visibilityInput.on('change', function() {
  83. layer.setVisible(this.checked);
  84. });
  85. visibilityInput.prop('checked', layer.getVisible());
  86.  
  87. $.each(['opacity'],
  88. function(i, v) {
  89. var input = $(layerid + ' input.' + v);
  90. input.on('input change', function() {
  91. layer.set(v, parseFloat(this.value));
  92. });
  93. input.val(String(layer.get(v)));
  94. }
  95. );
  96. }
  97. map.getLayers().forEach(function(layer, i) {
  98. bindInputs('#layer' + i, layer);
  99. if (layer instanceof ol.layer.Group) {
  100. layer.getLayers().forEach(function(sublayer, j) {
  101. bindInputs('#layer' + i + j, sublayer);
  102. });
  103. }
  104. });
  105.  
  106. $('#layertree li > span').click(function() {
  107. $(this).siblings('fieldset').toggle();
  108. }).siblings('fieldset').hide();
  109.  
  110. </script>
  111. </body>
  112. </html>

[html/js]点击标题出现下拉列表的更多相关文章

  1. JS弹出模态窗口下拉列表特效

    效果体验:http://hovertree.com/texiao/js/20/ 或者扫描二维码在手机体验: 点击选择城市后,在弹出的层中的输入框,输入英文字母 h,会有HoverTree和Hewenq ...

  2. jquery如何实现点击标题收缩下面的内容

    jquery如何实现点击标题收缩下面的内容 一.总结 一句话总结:怎么做复杂前端任务,先把样式(最简单)做出来,然后在写js. 1.如何取jquery集合中的某个索引号的元素? 不是get(),是eq ...

  3. [WPF]ComboBox.Items为空时,点击不显示下拉列表

    ComboBox.Items为空时,点击后会显示空下拉列表: ComboBox点击显示下拉列表,大概原理为: ComboBox存在ToggleButton控件,默认ToggleButton.IsChe ...

  4. js点击左右滚动+默认自动滚动类

    js点击左右滚动+默认自动滚动类 点击下载

  5. selenium—JS点击方法

    package com.allin.pc;import java.util.NoSuchElementException;import org.openqa.selenium.By;import or ...

  6. 用 JS 点击左右按钮 使图片切换 - 最精简版-ljx2380000-ChinaUnix博客

    body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI ...

  7. 项目遇到的小问题(关于vue-cli中js点击事件不起作用和iconfont图片下载页面css样式乱的解答)

     第一个:关于vue-cli中js点击事件不起作用 在vue的methods方法queryBtnFun()中拼接html和click操作事件的时候,发现点击事件一起未起作用: 后来发现是DOM执行顺序 ...

  8. Js点击触发Css3的动画Animations、过渡Transitions效果

    关键是首先指定动画效果的CSS属性名称,然后在Js中改变这个属性 如果不使用Js触发,可以选择利用css的状态:hover,focus,active 来触发,也可以一开始就触发 下例为Js点击触发过渡 ...

  9. JS中点击事件冒泡阻止

    JS中点击事件冒泡阻止 解析: 一个div层'out',内含有一个div层'in'.如下: 两个层都绑定了点击事件,但是点击in层的时候,点击事件会出现冒泡现象,同时也会触发out层的点击事件. 但是 ...

随机推荐

  1. 如何解决diff: /../Podfile.lock: No such file or directory 的问题

    1.问题描述 之前碰到过此类问题,原因是之前用了测试版本的pod,然后回归正式版本,导致找不到pod文件 diff: /../Podfile.lock: No such file or directo ...

  2. opencv.js小案例

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  3. c编译错误[Error] ld returned 1 exit status 解决

    [Error] ld returned exit status 编译的过程中出现这个错误极有可能是因为函数名错误引起的,因此回到源码中观察函数名,尤其是那些库函数中的函数.

  4. Redhat7无法启动mysql

    是这样的,7的这个环境安装了叫MariaDB了 安装MariaDB之后必须先启动MariaDB [root@redhatx ~]# yum -y install mysql [root@redhatx ...

  5. 关于jboss的线程问题+java.lang.outofmemoryError

    近日来,用Jmeter做压力测试.发现,每台客户机使用800个线程组压力倍增.昨天的测试,到了今天下午都没有跑完. 仔细观察了下Jboss的错误日志,发现,jboss已经宕机了. 本身后台的环境是使用 ...

  6. 解决因为链表过长,sql查询慢的问题

    /** * 解决因为链表过长,sql查询慢的问题 * 使用分治算法,先切分链表,然后查询结果,最后合并结果 *  * @author lingpy * @since 1.0 */public clas ...

  7. Linux硬件信息采集

    dmidecode: 简介: dmidecode命令通过读取DMI数据库获取硬件信息并输出.由于DMI信息可以人为修改,因此里面的信息不一定是系统准确的信息 dmidecode遵循SMBIOS/DMI ...

  8. python怎样在一行中捕获多个异常

    所属网站分类: python基础 > 异常处理 作者:浮沉 链接:http://www.pythonheidong.com/blog/article/71/ 来源:python黑洞网,专注pyt ...

  9. nginx关闭默认站点/空主机头(禁止IP直接访问、防止域名恶意解析)

    监控时做了负载均衡,所以只能让nginx指定域名访问,那我们就可以防止因为域名不对跳到默认的页面去. curl  -I   -H  “host:域名”   --include   https://19 ...

  10. 002 android studio 常用设置

    1.改变字体 file--->setting --->font--->size 2.更改最小安卓版本 在project目录下,app下的build.gradle中修改 注意:buil ...