jQuery Scroll Path 滚插视图酷炫
jQuery Scroll Path是一个jQuery的滚动路径插件,可以让你自定义滚动路径。该插件是使用canvas flavored的语法来绘制路径。可以通过鼠标滚轮上/下箭头键和空格键来查看路径效果;空格键的查看速度会比鼠标滚动的效果快;当你按住Shift键的时候再按空格键时,路径将会向后滚动。除此之外,我们还可以通过这个插件来自定义滚动条。
在滚动路径的时候我们还可以结合使用css来进行变换,使页面可以发生丰富的变换效果。在有些浏览器中,是不支持css变换效果,那所有的旋转切换将会忽略不计,但仍然遵循自定义的路径。
1,下载jQuery Scroll Path的框架
开源中国中下载
https://www.oschina.net/p/scrollpath
2,在自己的html中导入框架
link:
<link rel="stylesheet" type="text/css" href="style/style.css" />
<link rel="stylesheet" type="text/css" href="style/scrollpath.css" />
<link href="http://fonts.googleapis.com/css?family=Terminal+Dosis&subset=latin" rel="stylesheet" type="text/css">
script
先引入jQuery
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.pack.js"></script>
再引入其他js框架
<script type="text/javascript" src="script/lib/prefixfree.min.js"></script>
<script type="text/javascript" src="script/lib/jquery.easing.js"></script>
<script type="text/javascript" src="script/jquery.scrollpath.js"></script>
<script type="text/javascript" src="script/demo.js"></script>
不知道什么鬼
<!-- <link href="http://fonts.googleapis.com/css?family=Terminal+Dosis&subset=latin" rel="stylesheet" type="text/css">
-->
<!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->

内容中可以添加自己需要的东西,也可以圈在一个固定的空间里 达到炫酷的效果
<!-- 第一个 -->
<div class="settings">
<a href="" class="show-path">Show Path</a>
</div>
<div class="wrapper">
<!-- 标题 -->
<div class="demo">
<h1>jQuery Scroll Path</h1>
<span class="arrow">↓</span> A Quick Demo <span class="arrow">↓</span>
</div>
<!-- 图一 -->
<div class="description">
<img src="img/01.png" class="big">
</div>
<!-- 图二 -->
<div class="syntax">
<img src="img/02.png" class="big">
</div>
<!-- 图三 -->
<div class="scrollbar">
<img src="img/03.png" class="big">
</div>
<!-- 图四 -->
<div class="rotations">
<img src="img/04.png" class="big">
<span class="upside-down big">in <a href="http://caniuse.com/#feat=transforms2d">supported</a> browsers.</span>
</div>
<!-- 图五 -->
<div class="source">
<img src="img/03.png" class="big">
</div>
<!-- 图六 -->
<div class="follow">
<span class="big">Feel free to <a href="https://twitter.com/JoelBesada">follow me</a> on Twitter. You can also be <span class="count">a kind person and</span> <a href="https://twitter.com/intent/tweet?original_referer=https%3A%2F%2Ftwitter.com%2Fabout%2Fresources%2Fbuttons&source=tweetbutton&text=jQuery%20Scroll%20Path%20Plugin&url=http%3A%2F%2Fjoelb.me%2Fscrollpath%2F&via=JoelBesada" class="tweet">tweet</a> this.</span>
</div>
</div>
翻译js代码 demo.jsscript/demo.js
$(document).ready(init);function init() { /* ========== DRAWING THE PATH AND INITIATING THE PLUGIN ============= */ $.fn.scrollPath("getPath") // 移到 'start' 元素 .moveTo(400, 50, {name: "start"}) // 写路径到 'description' 元素 .lineTo(400, 800, {name: "description"}) // 弧度和写路径到 'syntax' .arc(200, 1200, 400, -Math.PI/2, Math.PI/2, true) .lineTo(600, 1600, { callback: function() { highlight($(".settings")); }, name: "syntax" }) // 继续写路径到 'scrollbar' .lineTo(1750, 1600, { callback: function() { highlight($(".sp-scroll-handle")); }, name: "scrollbar" }) // 画弧,然后旋转 .arc(1800, 1000, 600, Math.PI/2, 0, true, {rotate: Math.PI/2 }) //写路径到 'rotations' .lineTo(2400, 750, { name: "rotations" }) // 旋转到位 .rotate(3*Math.PI/2, { name: "rotations-rotated" }) // 继续画路径到 'source' .lineTo(2400, -700, { name: "source" }) // 向下的小弧 .arc(2250, -700, 150, 0, -Math.PI/2, true) //写路径到 'follow' .lineTo(1350, -850, { name: "follow" }) // 画弧与旋转返回开始 .arc(1300, 50, 900, -Math.PI/2, -Math.PI, true, {rotate: Math.PI*2, name: "end"}); //上面完成了路径的设置, 接下来实始化到 wrapper 元素上 $(".wrapper").scrollPath({drawPath: true, wrapAround: true}); // 给导航链接加上点击滚动事件 $("nav").find("a").each(function() { var target = $(this).attr("href").replace("#", ""); $(this).click(function(e) { e.preventDefault(); //引入 jQuery easing (http://gsgd.co.uk/sandbox/jquery/easing/) // 使用 easing functions 如下 $.fn.scrollPath("scrollTo", target, 1000, "easeInOutSine"); }); }); /* ===================================================================== */ $(".settings .show-path").click(function(e) { e.preventDefault(); $(".sp-canvas").toggle(); }).toggle(function() { $(this).text("隐藏路径"); }, function() { $(this).text("显示路径"); }); $(".tweet").click(function(e) { open(this.href, "", "width=550, height=450"); e.preventDefault(); }); }function highlight(element) { if(!element.hasClass("highlight")) { element.addClass("highlight"); setTimeout(function() { element.removeClass("highlight"); }, 2000); }}function ordinal(num) { return num + ( (num % 10 == 1 && num % 100 != 11) ? 'st' : (num % 10 == 2 && num % 100 != 12) ? 'nd' : (num % 10 == 3 && num % 100 != 13) ? 'rd' : 'th' );} |
jQuery Scroll Path 滚插视图酷炫的更多相关文章
- 一个酷炫的,基于HTML5,Jquery和Css的全屏焦点图特效,兼容各种浏览器
基于HTML5和CSS的焦点图特效,梅花图案的背景很有中国特色,而且还会动哦,效果超炫,推荐下载! 演示图 html代码 <!DOCTYPE html PUBLIC "-//W3C// ...
- 【Android】 给我一个Path,还你一个酷炫动画
本篇文章已授权微信公众号 hongyangAndroid (鸿洋)独家公布 转载请标明出处: http://blog.csdn.net/zxt0601/article/details/53040506 ...
- Android常用酷炫控件(开源项目)github地址汇总
转载一个很牛逼的控件收集帖... 第一部分 个性化控件(View) 主要介绍那些不错个性化的 View,包括 ListView.ActionBar.Menu.ViewPager.Gallery.Gri ...
- MVC中使用SignalR打造酷炫实用的即时通讯功能附源码
前言,现在这世道写篇帖子没个前言真不好意思发出来.本贴的主要内容来自于本人在之前项目中所开发的一个小功能,用于OA中的即时通讯.由于当时走的太急,忘记把代码拿出来.想想这已经是大半年前的事情了,时间过 ...
- MVC中使用SignalR打造酷炫实用的即时通讯功能(轉載)
資料來源:http://www.fangsi.net/1144.html 前言,现在这世道写篇帖子没个前言真不好意思发出来.本贴的主要内容来自于本人在之前项目中所开发的一个小功能,用于OA中的即时通讯 ...
- 纯CSS3实现的一些酷炫效果
之前在网上看到一些用纯CSS3实现的酷炫效果,以为实现起来比较困难,于是想看看具体是怎么实现的. 一.笑脸猫动画 实现效果如下: 这个实现起来确实比较麻烦,很多地方需要花时间,有耐心地调整. 1.先看 ...
- 三分钟学会用 js + css3 打造酷炫3D相册
之前发过该文,后来不知怎么回事不见了,现在重新发一下. 中秋主题的3D旋转相册 如图,这是通过Javascript和css3来实现的.整个案例只有不到80行代码,我希望通过这个案例,让正处于迷茫期的j ...
- 【CSS进阶】试试酷炫的 3D 视角
写这篇文章的缘由是因为看到了这个页面: 戳我看看(移动端页面,使用模拟器观看) 运用 CSS3 完成的 3D 视角,虽然有一些晕3D,但是使人置身于其中的交互体验感觉非常棒,运用在移动端制作一些 H5 ...
- 纯CSS3写的10个不同的酷炫图片遮罩层效果【转】
这个是纯CSS3实现的的10个不同的酷炫图片遮罩层效果,可以欣赏一下 在线预览 下载地址 实例代码 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 ...
随机推荐
- Android 开发 AudioRecord音频录制
前言 Android SDK 提供了两套音频采集的API,分别是:MediaRecorder 和 AudioRecord,前者是一个更加上层一点的API,它可以直接把手机麦克风录入的音频数据进行编码压 ...
- BZOJ 2683: 简单题(CDQ 分治)
题面 Time Limit: 50 Sec Memory Limit: 128 MB Description 你有一个N*N的棋盘,每个格子内有一个整数,初始时的时候全部为0,现在需要维护两种操作: ...
- C++星号的含义
[转载] [http://blog.sina.com.cn/s/blog_4a50d85b0100uk3c.html] 1.乘法运算符 2.定义指针 int *p = 0; 还是 int* p ...
- linux 获取外网ip地址
curl ifconfig.me 私有ip地址,获取公网ip
- jeecms v9.3 has a stroed xss vulnerability
转载:https://blog.csdn.net/libieme/article/details/83588929 jeecms v9.3 has a stroed xss vulnerability ...
- 学习mysql数据库
1.数据库是怎么回事 数据库是存储数据的永久空间,通过一种特殊的方式存储到硬盘中 数据库分为关系型数据库和非关系型数据库 mysql查看数据的方式为:结构化查询语言(SQL语句) 访问mysql数据库 ...
- MySQL用户权限详细汇总
1,MySQL权限体系 mysql 的权限体系大致分为5个层级:全局层级:全局权限适用于一个给定服务器中的所有数据库.这些权限存储在mysql.user表中.GRANT ALL ON .和REVOKE ...
- 【python之路26】字符串之格式化%和format
Python基础之杂货铺 字符串格式化 Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式, ...
- input[type=file]上传图片及转为base64码以及预览
<input type="file" id="imgurl" capture="camera" accept="image/ ...
- 惊!VUE居然数据不能驱动视图?$set详细教程
众所周知.VUE最大的优点就是数据驱动视图.当数据发生改变时,会监听到变化,后渲染到页面上.那么为什么当我们在修改data中声明的数组或对象时.VUE并没有监听到变化呢?这个我也不知道.我们可以后续再 ...