javascript - 如何影响点击google map?

标签 javascript css

<分区>

在新的谷歌地图中,​​当你点击 map 时,它看起来像一个圆圈从你点击的点开始动画,然后扩大然后消失。当您点击一条道路时,会出现一个点,并且似乎每隔几秒跳动一次。使用或不使用谷歌地图如何实现这一效果?

换句话说,用户可以点击页面上的空白区域并获得相同的动画点击效果,其中:

1) 单击 HTML 页面或 div 内的任意位置会导致圆圈从用户单击的位置缓慢扩展到大约 5px,然后淡出并消失。

2) 单击 HTML 页面上或 div 内的任意位置会导致页面上出现一个可能为 3px 的点,并且(第二个圆圈?)从仅具有轮廓的点开始扩大,扩展为 5px.. .淡出并消失......一遍又一遍。 (点保持原位,只是继续“脉动”的动画圆圈

寻找最佳解决方案可以是 CSS3、Javascript(有或没有任何库)或 HTML5。

最佳答案

有趣的想法。经过一些摆弄后,这是我所做的方法

1) 使用 javascript 在点击位置附加一个新元素和我想出的一些 CSS 动画 this demo

对应的CSS动画:

@keyframes grow {
    0% {
        width: 5px;
        height: 5px;
        margin-top: -2.5px;
        margin-left: -2.5px;
    }
    50% {
        margin-top:-7.5px;
        margin-left: -7.5px;
        width: 15px;
        height: 15px;
        opacity: 1;
    }
    100% {
        margin-top:-12.5px;
        margin-left: -12.5px;
        width: 25px;
        height: 25px;
        opacity: 0;
    }
}

2) 我无法在 Google map 上重现你对这个的意思,但根据你的描述我想出了 this demo

对应的CSS动画:

@keyframes pulse {
    0% {
        width: 5px;
        height: 5px;
        margin-top: -4.5px;
        margin-left: -4.5px;
    }
    100% {
        margin-top:-14.5px;
        margin-left: -14.5px;
        width: 25px;
        height: 25px;
    }
}

这些方法适用于任何支持 CSS3 动画的浏览器,可以找到列表 here .后备类似的解决方案是使用相同的方法,但使用 jQuery 的 .animate 或类似的东西来代替

如果不支持动画,第一个只是一个 5px x 5px 的圆圈,一秒钟后删除。第二个是一个黑点,一直持续到再次单击文档为止。

旁注:在目前的状态下,我认为它无法在 IE 中运行,因为它不支持 document.getElementsByClassName

关于javascript - 如何影响点击google map?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18946454/

相关文章:

javascript - 获取 next.js 中不是动态路由参数的查询参数

javascript - 子类 View 渲染后如何渲染父类(super class) View ?

javascript - d3.js 投影比例不会增加一个国家的大小

CSS 3 专栏——试图理解 IE6 错误修复

javascript - 文字出现放大效果

javascript - 当我将按钮移动到另一个位置时,附加到按钮的 <div> 不显示

javascript - 如何通过浏览器确定远程服务器的延迟

javascript - 使用单选按钮显示/隐藏具有相同类的多个 DIV

html - "CSS3111: @font-face encountered unknown error"来自网络服务器;从本地文件系统浏览时工作正常

javascript - angularjs ng-repeat 实现滚动条