前端开发学习笔记五

幽灵按钮最近很流行,就寻思着做了一个,它有如下一些效果。

其中按钮上的线条和图标的旋转完全用css3中的transtion和transform来实现,其中图标的旋转效果实现过程如下:

.link .img{
    display: block;
    width:180px;
    height:180px;
    margin-bottom: 20px;
    -webkit-transition:all 0.5s cubic-bezier(0, .18, 0, .97);    //为了兼容chrome和Safari
    transition:all 0.5s cubic-bezier(0, .18, 0, .97);        //定义动画属性,包裹要变化的属性,时间,以及变化曲线(linear、ease、ease-out或者自定义等)
}
.mis .img{
    background: url(../images/mission.png) no-repeat  center 0;
}
.link .img:hover{
    -webkit-transform: rotate(360deg) scale(1.2);
    -ms-transform: rotate(360deg) scale(1.2);
    transform: rotate(360deg) scale(1.2);
}

按钮的线条效果与上面的方法类似,而按钮上的提示文字使用js来实现的。

主要原理就是通过js获取按钮上相应的title(即要显示的文字),然后将其增加在提示框内,在通过判定当前按钮的位置来设置提示框要出现的相应位置。

$(function(){          
    $(".link .btn").hover(function(){
        var title = $(this).attr("data-title");
        $(".tip em").text(title);
        var left = $(this).position().left;
        var dis = Math.abs(($(".tip").outerWidth()-$(this).outerWidth())/2);
        var now = left -dis;
        console.log("title="+title+"  ","left="+left,"dis=",dis,"now="+now,"this"+$(".tip").outerWidth());
        $(".tip").css({"left":now+"px"}).animate({"top":130,"opacity":1},300);
    },
    function(){
        $(".tip").animate({"top":100,"opacity":0},300);
    }
    )
})
//用了jQuery框架中的hover(function(),function())函数,前一个函数为鼠标放上去的动作,后一个为鼠标离开时的动作。
时间: 2024-12-12 03:15:06

前端开发学习笔记五的相关文章

前端开发学习笔记(一)深入浅出Javascript

从事开发工作已经有十几年时间了,但一直没有真正涉猎WEB开发,这在当今IT业界听起来有些不可思议哈.从今天开始静下心来,全面深入的学习WEB开发的有关知识.将学习的体会和要点记录下来,以作备忘. 深入浅出Javascript一共12章,按照章节记录. 第一章 前端开发涉及到三个层面:HTML(内容) + CSS(外观) + Javascript(交互/行动) JS脚本不论在<script>块中 还是 嵌入HTML中,都应以";"分号作为结束符.这是一个规范的写法 中文网页应

Web前端开发学习笔记(一)

最近在复习Web前端的开发知识,于是就把大二上学期曾经学过的东西拿出来复习一遍,把自己在做曾经的作业时遇到有意义的点都记下来吧. Homework1:http://my.ss.sysu.edu.cn/wiki/display/WEB/Homework+1+-+Recipe 1.text和font系的属性傻傻分不清楚 在写的过程中,遇到这样的问题:改变字体颜色,改变字体样式,给文本加下划线等等这些操作对应的属性分不清楚,究其原因,我认为是自己对css文本和css字体这两种的属性分不清楚,于是就对常

Web前端开发 学习笔记

HTML开始: HTML:超文本标记语言;用来做页面;通过浏览器来查看效果: 结构:<html >--页面<head>--网页头部<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>云商城</title></head> <body>--身体 今天再次来到东华,大家非常高兴!</b

前端开发学习笔记四

前天学习了固定导航栏根据页面滚动条距离来自动定位的效果,其中心思想就是通过判定当前滚动条的值与页面中相应内容值大小的关系来选择.js代码如下(用到了jQuery库): $(document).ready(function () { $(window).scroll(function () { var top = $(window).scrollTop(); var menu = $("#menu"); var items = $("#content").find(&

前端开发学习笔记三

把慕课的首页临摹了一下,感觉还不错. 顺便推荐一个前端编辑器,Adobe出的Brackets,可以实时预览,再也不用老是切换加f5了,可以极大的提高编写速度. 下载地址: http://brackets.io/

前端开发学习笔记二

前几天把之前做的购物网页的js效果写了出来. 如图所示,分别为以下几个效果: 搜索按钮的文字效果 轮播图 模拟下拉菜单 鼠标点击按钮,图片进行左右滚动 在学习过程中,思想很重要.写一个效果之前,现对其进行设计,然后分析,最后再实现. 比如很简单的一个轮播图,让图片淡入淡出的切换.它的原理就是,先让所有的图片淡出,然后让当前要显示的图片淡入就可以了.理解了它的工作原理,写起来就很简单了. 1 shop.app.Banner=function(){ //Banner轮播图效果 2 var ad=do

前端开发学习笔记一

1.DOCTYPE 严格模式与混杂 http://www.cnblogs.com/lxin/archive/2013/02/18/2915344.html 原文链接:Quirks mode and strict mode 地址是:http://www.quirksmode.org/css/quirksmode.html 问题的产生: 当Netscape4(译注:网景公司早期的浏览器)和IE4(微软公司早期的浏览器)实现CSS机制时,并没有遵循W3C提出的标准.Netscape4 提供了糟糕的支持

前端开发学习笔记二--HTML5

1.什么是 Canvas? <canvas> 标签用于在网页上绘制图像,<canvas> 元素本身并没有绘制能力(它仅仅是图形的容器) , 必须使用脚本(通常是 JavaScript)来完成实际的绘图任务. 2.HTML 5 Canvas 参考手册 http://www.w3school.com.cn/html5/html5_ref_canvas.asp http://www.w3school.com.cn/html5/html5_ref_canvas.asp http://www

Web前端开发学习笔记(二)

Homework2:http://my.ss.sysu.edu.cn/wiki/display/WEB/Homework+2+-+Movie+Review 这份作业跟布局相关,因此很多都是布局的知识: 1.display属性的block,inline-block,inline值的区分 其实真正需要区分的是inline-block和inline.都是在同一行内,怎么区分他们呢?首先要明白块元素和行内元素很重要的一点区别:块元素的高度和宽度我们都是可以控制的,而行内元素是不可以的.block对应的就