4 javascript wave materialize ripple material-design
我正在使用MaterializeCSS(http://materializecss.com/)建立我的网站
我想知道如何手动触发某些控件的波动效果,例如:
“触发某些按钮的波动/波纹效果。”
MaterializeCSS团队认为他们使用的是“ Waves.js” JavaScript库的端口(http://fian.my.id/Waves/),但是当我尝试使用这些命令时,浏览器控制台中会出现错误。
有人可以在这里指出我吗?
代码用作示例:
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<!--Import materialize.css-->
<link type="text/css" rel="stylesheet" href="css/materialize.css" media="screen,projection"/>
<!--Let browser know website is optimized for mobile-->
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
<!--Import jQuery before materialize.js-->
<script type="text/javascript" src="jquery/jquery.min.js"></script>
<script type="text/javascript" src="js/materialize.min.js"></script>
<title>My website title</title>
</head>
<body>
<script type="text/javascript">
$(document).ready(function() {
Waves.ripple('#but_1');
});
</script>
<a id="but_1" class="waves-effect waves-light btn">button</a>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
根据MaterializeCSS TEAM ...
“ Waves是我们包含在Materialize中的外部库,可让我们创建Material Design中概述的墨水效果”
...并根据Waves文档....
Waves.ripple(elements,options)以编程方式在HTML元素中创建波纹效果。
(http://fian.my.id/Waves/#api)
因此,在浏览器控制台中,我收到此错误:
未捕获的TypeError:Waves.ripple不是函数
小智 5
我找到了解决方案!
脚步:
下载最新版本的Waves.js,链接https://github.com/fians/Waves/releases
从materializeCSS文件中打开名为“ materialize.js”的文件
打开后,尝试找到以...开头的部分。
;/*!
* Waves v0.6.4
* http://fian.my.id/Waves
*
* Copyright 2014 Alfiana E. Sibuea and other contributors
* Released under the MIT license
* https://github.com/fians/Waves/blob/master/LICENSE
*/
;(function(window) {
'use strict';
var Waves = Waves || {};
var $$ = document.querySelectorAll.bind(document);
// Find exact position of element
function isWindow(obj) {
return obj !== null && obj === obj.window;
}
Run Code Online (Sandbox Code Playgroud)该部分属于在materializeCSS中嵌入的Waves库....用新的Waves.js代码替换所有该部分代码....怎么做?....复制最新版本的Waves.js的代码,并在materialize.js的Waves SECTION中替换(PASTE)
现在...在HTML文件中,您应该有类似这样的内容(检查注释)
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<!--ADD the CSS from materializeCSS -->
<link type="text/css" rel="stylesheet" href="css/materialize.css" media="screen,projection"/>
<!--Let browser know website is optimized for mobile-->
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
<!--Import jQuery before materialize.js-->
<script type="text/javascript" src="jquery/jquery.min.js"></script>
<!-- Add the file "materialize.js" ... the one you just modified -->
<script type="text/javascript" src="js/materialize.js"></script>
<!-- Add the CSS from Waves.js -->
<link type="text/css" rel="stylesheet" href="waves/waves.css" media="screen,projection"/>
<!-- DO NOT ADD the Waves.js
<script type="text/javascript" src="wave/waves.js"></script>
-->
<title>Your site</title>
</head>
<body>
<script type="text/javascript">
function clickbut() {
//Now you can use the Waves.ripple function!!!
Waves.ripple('#but_1');
};
$(document).ready(function() {
//Initialize the Waves module
Waves.init()
});
</script>
<h2 class="left-align"><i class="left-align medium material-icons">touch_app</i>My website Header</h2>
<button onclick="clickbut()">click me</button>
<a class="waves-effect waves-light btn ">button</a>
<a id="but_1" class="waves-effect waves-light btn"><i class="material-icons left">cloud</i>button</a>
<a class="waves-effect waves-light btn"><i class="material-icons right">cloud</i>button</a>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)如果单击“单击我”按钮,则波纹效果将在#but_1按钮中播放
归档时间: |
|
查看次数: |
5189 次 |
最近记录: |