搜索
您的当前位置:首页使用原生js实现Ripple按钮的简单实例代码

使用原生js实现Ripple按钮的简单实例代码

时间:2023-12-01 来源:乐玩宠
本篇文章主要介绍了原生js实现简单的Ripple按钮实例代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。

整理文档,搜刮出一个原生js实现简单的Ripple按钮的代码,稍微整理精简一下做下分享。

效果如图

准备食材(html部分)

 <ul id="nav"> <li> <a href='#'> <span>首页</span> <span class="circle"></span> </a> </li> <li> <a href='#'> <span>我的</span> <span class="circle"></span> </a> </li> <li> <a href='#'> <span>更多</span> <span class="circle"></span> </a> </li> </ul>

典型的菜单li布局,里面的span.circle表示的是触摸弹出的小圆圈。

准备辅料 (css部分)

 #nav { display: flex; } #nav li { position: relative; overflow: hidden; flex: 1; } li a { display: flex; flex-direction: column; justify-content: center; align-items: center; } .circle{ position: absolute; background: rgba(86,187,247,.1); width: 1px; height: 1px; top:50%; left: 50%; border-radius: 50%; } .circle.act{ animation: navCircle .4s; } @keyframes navCircle { from {transform: scale(0);border-radius: 50%;} to {transform:scale(200);border-radius: 50%;} }

我的思路是这样的,给li相对定位,给小圆圈绝对定位,再给小圆圈添加动画navCircle,采用css3的缩放使其变大,至于为什么是200倍和.4s呢,经过测试这样更人性化,其余的倍数你们也可以试试。

大火烹饪 (js部分)

代码很简单,相信大家也猜到了,点击li的时候给小圆圈添加class 'act',并且设置小圆圈的起始位置,监听触摸结束的时候,取消class 'act',有人肯定要问了,为什么你不用touchstart呢,唉,因为没有layerY这个属性,找了半天都没找到啊。还有为什么不用forEach,有的浏览器不支持啊,泪奔= = !

友情提示!touchend仅支持移动端

结束

做这个部分是因为我们安卓app里面有这个功能,所以我就想看看h5怎么做,开始的思路是让宽度和高度随着时间变大,但是实现了之后感觉性能不好,所以才想到了直接增加倍数呗,于是这个功能变完美诞生了,开始享用这份套餐把 !

小编还为您整理了以下内容,可能对您也有帮助:

如何用原生 js 给一个按钮绑定两个鼠标事件?

你可以使用以下方法为一个按钮绑定两个鼠标事件:

1. 首先,获取按钮元素。例如,通过 `getElementById` 或 `querySelector` 方法获取。

2. 使用 `addEventListener` 方法为按钮添加第一个鼠标事件。

3. 在回调函数内部,再次使用 `addEventListener` 方法为按钮添加第二个鼠标事件。

以下是一个示例代码:

```javascript

// 获取按钮元素

var button = document.getElementById('myButton');

// 为按钮添加第一个鼠标事件

button.addEventListener('mousedown', function() {

console.log('鼠标按下事件触发');

});

// 为按钮添加第二个鼠标事件

button.addEventListener('mouseup', function() {

console.log('鼠标抬起事件触发');

});

```

如何用JS来点击按钮

原理

用JS来点击按钮需要分2步,第一步是选中按钮的元素,第二步是使用元素自带的click函数。

例如接下来我将要演示的例子中,仅用

document.getElementById("btn").click()

一行就可以控制按钮点击。

其中document.getElementById("btn")是根究id获取按钮的元素,click()是使按钮被点击一次。

演示

这是我为此问题专门写的在线演示页面点击按钮演示页面。

页面结构如图

首先点击右下角打开控制台

然后输入

document.getElementById("btn").click()

这行代码

按回车运行代码即可弹出一行提示,说明按钮被点击。你可以用鼠标点击一下按钮,也是这个效果。

如何用JS实现 左边一个下拉列表 选择一个值 点击右边的添加按钮 将选择的内容添加到一个div中

用js和jQuery写了个demo,你自己完善下细节吧;

原生js实现

<!doctype html>

<html>

<head>

<meta charset="UTF-8">

<title>添加取值</title>

</head>

<body>

<select id="dataSource" multiple>

<option value="1">jQuery入门</option>

<option value="2">jQuery精通</option>

<option value="3">angularjs入门</option>

<option value="4">angularjs精通</option>

</select>

<button id="add">添加</button>

<div id="choosed"></div>

<script type="text/javascript">

var add = document.getElementById('add'),

sel = document.getElementById('dataSource'),

choseContainer = document.getElementById('choosed');

add.onclick = function(){

if(sel.selectedIndex < 0){

return alert('请先选择分类');

}

var text = sel.options[sel.selectedIndex].innerHTML,

newNode = document.createElement("div");

newNode.innerHTML = text;

choseContainer.appendChild(newNode)

}

</script>

</body>

</html>

jQuery 实现:你需要将引入的jQuery src换成你本地的src<!doctype html>

<html>

<head>

<meta charset="UTF-8">

<title>添加取值</title>

</head>

<body>

<select id="dataSource" multiple>

<option value="1">jQuery入门</option>

<option value="2">jQuery精通</option>

<option value="3">angularjs入门</option>

<option value="4">angularjs精通</option>

</select>

<button id="add">添加</button>

<div id="choosed"></div>

<script type="text/javascript" src="http:本地路径/jquery/1.10.2/jquery.min.js"></script>

<script type="text/javascript">

$('button').click(function(){

var dataSource = $('#dataSource :selected');

if(dataSource.length === 0){

return alert('请先选择分类');

}

var text = dataSource.text();

$('#choosed').append('<div>'+text+'</div>');

});

</script>

</body>

</html>

乐玩宠还为您提供以下相关内容希望对您有帮助:

如何用原生 js 给一个按钮绑定两个鼠标事件?

你可以使用以下方法为一个按钮绑定两个鼠标事件:1. 首先,获取按钮元素。例如,通过 `getElementById` 或 `querySelector` 方法获取。2. 使用 `addEventListener` 方法为按钮添加第一个鼠标事件监听器。3. 在回调函数内部...

如何用JS来点击按钮

原理用JS来点击按钮需要分2步,第一步是选中按钮的元素,第二步是使用元素自带的click函数。例如接下来我将要演示的例子中,仅用 document.getElementById("btn").click()一行就可以控制按钮点击。其中document.getElementByI...

javascript 怎么添加按钮

1。加载时就有该按钮,但是设置不显示,需要时再显示该按钮 2。往指定的区域添加按钮 第2种如果是借助JQuery更简单实现,这里是一个用原生js实现的示例: function addButton(){ var html ="";document.getElementByI...

原生JS实现点击一个div隐藏或者显示另外一个div!不用JQ就用原生的写...

第一个div添加onclick()方法。方法里面代码如下:if(document.getElementById("B").style.display= ="none"){ //B是另一个div document.getElementById("B").style.display= "block";}else{ document.getElementBy...

如何用jquery和原生js控制提交按钮禁用

上面是一段按钮的html代码 如果要用原生的js来禁用这个按钮 可以用这样:document.getElementByIdx_x_x("btnShow").disabled=true;(这样就把按钮禁用了)如果要重新开启按钮,则可以让disabled=false;即可 那么在jquery下...

怎样用js实现每次点击按钮都使div向右移动50px?

原生js实现 var btn_click=document.getElementById("move"); //获取点击按钮 var box=document.querySelector(".test");//获取要移动的div var a=0;btn_click.onclick=function(){ a=a+50;box.style.left=a+'...

如何用js实现点击按钮下载文件

在按钮上写属性 onclick="函数名()" ,作用是绑定click事件 如 然后在脚本处写上对应的函数即可,在函数中跳转到相应的文件路径就行。如 function Click(){ window.location.href="文件的url地址";} ...

点击下面的小图上面的大图切换,点击四个按钮价格切换,急求JS代码...

";img[j].style.display="none";}this.className="active";img[this.index].style.display="block";}}做了一个简单图片切换的效果,布局自己写,懒得写布局了。价格同理,自己练习吧。

求助~怎么实现按钮点击一次之后,按钮不能再点击了,变为灰色,下面代码怎 ...

1、首先新建html页面,设置一个button按钮。2、然后拷贝一张图片,编辑CSS代码。引入JQ的类库,并引入之前编辑的CSS样式。3、编辑js代码,之后运行即可。4、代码目录结构如下。5、最终效果如下图所示,就完成了。

怎么让加载页面时不显示window,等点击某个按钮时window再出来?_百度...

1、使用原生js实现 使用原生js主要用到了window.onload方法:onload 事件会在页面或图像加载完成后立即发生。语法:onload="SomeJavaScriptCode"参数SomeJavaScriptCode是必须的规定该事件发生时执行的 JavaScript。实现代码:window....

Top
7.299301s