前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >共享个地图控件的样式

共享个地图控件的样式

作者头像
lzugis
发布2018-10-23 15:08:43
6010
发布2018-10-23 15:08:43
举报

概述:

今天给大家分享一个个人觉得比较好看的自己做的地图控件。

效果:

整体样式和鼠标经过

选中的控件以及对应的操作

实现的代码:

1、icon.css

代码语言:javascript
复制
.icon{
    display:inline-block;
    width:20px;
    height:20px;
    background:transparent url(sprite.png) no-repeat 0 0;
    text-indent:-9999px;
    overflow:hidden;
    margin: 7px;
}
.icon.zoomin{
    background-position:-40px 0;
}
.icon.zoomout{
    background-position:-60px 0;
}
.icon.geolocate{
    background-position:-80px 0;
}
.icon.layer{
    background-position:-100px 0;
}
.icon.legend{
    background-position:-120px 0;
}
.icon.share{
    background-position:-140px 0;
}
.icon.clipboard{
    background-position:-160px 0;
}
.icon.link{
    background-position:-180px 0;
}
.icon.close{
    background-position:-200px 0;
}
.icon.close:hover{
    cursor: pointer;
    background-position:-200px -20px;
}

2、style.css

代码语言:javascript
复制
html,body,ul,ol,li,form,fieldset,legend,h1,h2,h3,h4,h5,h6,p,input {
    border:0;
    margin:0;
    padding:0;
    background: #ddd;
    font:12px/20px "Microsoft YaHei";
    text-align: left;
}
.info-box{
    position: absolute;
    bottom: 0px;
    left: 0px;
    height:120px;
    display: none;
    width: 100%;
    background: #f2f2f2;
    border-top:solid rgba(0,0,0,0.6) 1px;
}
.info-box-content{
    padding: 5px 8px;
}
.info-box-close{
    position: absolute;
    top: 0px;
    right: 0px;
}
.map-control{
    margin-top: 8px;
    position:absolute;
    top: 20px;
    right: 30px;
    border-radius:4px;
}
.control-box{
    margin-top: 10px;
}
.control-button{
    display:block;
    height:35px;
    width:35px;
    background-color:rgba(0,0,0,0.6);
    outline:none;
}
.control-button:hover {
    background-color:#000;
}
.control-button.disabled {
    background-color:rgba(0,0,0,0.5);
    cursor:default;
}
.control-button.active {
    background-color:#9ed485;
}
.control-button.single{
    border-radius:4px;
}
.control-button.top{
    border-radius:4px 4px 0 0;
}
.control-button.center{
    border-radius:0;
}
.control-button.bottom{
    border-radius:0 0 4px 4px;
}
.entry{
    position: absolute;
    margin-left: 20px;
    margin-top:20px;
    width:30px;
    background:rgb(88,88,88);;
    padding:4px 6px;
    /*设置圆角*/
    -webkit-border-radius:5px;
    -moz-border-radius:5px;
    border-radius:5px;
    color: #ffffff;
    text-align: center;
}
/*右三角*/
.entry-trangle-right{
    position:absolute;
    top:6px;
    right:-5px;
    width:0;
    height:0;
    border-top:8px solid transparent;
    border-bottom:8px solid transparent;
    border-left:8px solid rgb(88,88,88);
}

3、page.html

代码语言:javascript
复制
<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title></title>
    <link rel="stylesheet" href="css/style.css">
    <link rel="stylesheet" href="css/icon.css">
    <script src="jquery.min.js"></script>
    <script src="map.js"></script>
</head>
<body>
<div id="infoBox" class="info-box">
    <div id="infoContent" class="info-box-content"></div>
    <div id="infoClose"class="info-box-close">
        <span class="icon close"></span>
    </div>
</div>
<div class="map-control">
    <div class="control-box">
        <a class="control-button top" isclick="false" href="#" title="" data-original-title="放大">
            <span class="icon zoomin"></span>
        </a>
        <a class="control-button bottom" isclick="false" href="#" title="" data-original-title="缩小">
            <span class="icon zoomout"></span>
        </a>
    </div>
    <div class="control-box">
        <a class="control-button top" isclick="true" href="#" title="" data-original-title="图层">
            <span class="icon layer"></span>
        </a>
        <a class="control-button bottom" isclick="true" href="#" title="" data-original-title="图例">
            <span class="icon legend"></span>
        </a>
    </div>
</div>
</body>
</html>

4、page.js

代码语言:javascript
复制
$(function(){
    $(".control-button").on("mouseover",function(){
        $("#entry").remove();
        var top = $(this).offset().top;
        var entry = $("<div />").attr("id","entry").addClass("entry")
            .append($("<div />").addClass("entry-trangle-right"))
            .append($(this).attr("data-original-title"))
            .css("top",(top-40)+"px").css("right","40px")
            .appendTo($(".map-control"));
    });
    $(".control-button").on("mouseout",function() {
        $("#entry").remove();
    });
    $(".control-button").on("click",function(){
        if($(this).attr("isclick")==="true") {
            var cls = $(this).attr("class");
            if(cls.indexOf("active") > 0){
                $(this).removeClass("active");
                $("#infoBox").animate({height:"hide"},"slow",null,function(){
                    $("#infoContent").html("");
                });
            }
            else{
                $(".control-button").removeClass("active");
                $(this).addClass("active");
                var title = $(this).attr("data-original-title");
                $("#infoBox").animate({height:"show"},"slow",null,function(){
                    $("#infoContent").html("").append(title);
                });
            }
        }
    });
    $("#infoClose").on("click",function(){
        $(".control-button").removeClass("active");
        $("#infoBox").animate({height:"hide"},"slow",null,function(){
            $("#infoContent").html("");
        });
    })
});

源代码下载地址:http://download.csdn.net/detail/gisshixisheng/9008937

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2015年08月15日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档