try.jquery-5-styling里的各种css样式操作
你好,这里是我的http://try.jquery.com/学习笔记:
这次来学习操作各种css。
主要对这段html元素进行操作。
<div id="all-tours">
<h1>Guided Tours</h1>
<ul>
<li class="tour usa">
<h2>New York, New York</h2>
<span class="details">$1,899 for 7 nights</span>
<span class="per-night"><span class="price">$275</span>/night</span>
<button class="book">Book Now</button>
<ul class="photos">
<li>
<img src="/assets/photos/newyork1.jpg">
<span>Notre Dame de Paris</span>
</li>
</ul>
</li>
<li class="tour france" data-discount="99">
<h2>Paris, France</h2>
<span class="details">$1,499 for 5 nights</span>
<span class="per-night"><span class="price">$300</span>/night</span>
<button class="book">Book Now</button>
<ul class="photos">
<li>
<img src="/assets/photos/paris3.jpg">
<span>Brooklyn Bridge</span>
</li>
</ul>
</li>
<li class="tour uk" data-discount="149">
<h2>London, UK</h2>
<span class="details">$2,199 for 5 nights</span>
<span class="per-night"><span class="price">$440</span>/night</span>
<button class="book">Book Now</button>
<ul class="photos">
<li>
<img src="/assets/photos/london.jpg">
<span>Tower of London</span>
</li>
</ul>
</li>
</ul>
</div>
修改背景色
Let's try to make the .tour elements on this page stand out a bit more. Inside our event handler for the mouseenter event, set the background-color to #252b30 using the css() method.
要求把tour突显出来,用mouseenter事件,给这个属性添加背景色。
在app.js中,添加这样的代码:
$(document).ready(function() {
$('.tour').on('mouseenter', function() {
$(this).css('background-color','#252b30');
});
});
修改字体
Let's set the font-weight to bold as well by passing in a JavaScript object to the css() method.
我先这样写了,然后得到了一大大的红色警告!
$(this).css('font-weight', 'bold');
那么怎么改呢?
其实这里在引导我们往最高效和正确的道路上走,就是用js的对象当成参数,然后用css调用。
所以与上面的背景色一起,改成这样子就好了。
$(this).css({'background-color':'#252b30',
'font-weight':'bold'});
显示隐藏属性
Let's see what the tour page would look like if we showed the .photos on mouseenter as well. Try using the show() method here to make it visible.
$(this).find('.photos').show();
操作高亮的css样式
直接用js写一堆css还是比较费劲,所以把css都提出去,单独写css文件,然后用js来调用,才是更科学的做法。比如用addClass,removeClass,toggleClass.
$('.tour').on('mouseover', function(){
$(this).addClass('highlight');
});
$('.tour').on('mouseleave', function(){
$(this).removeClass('highlight');
});
添加动画,让画面跳一跳,隐身,或者转个角度
先记下来这个价格歪歪悬挂的效果吧。很好玩!
.per-night {
opacity: 0;
-moz-transform: rotate(20deg);
-webkit-transform: rotate(20deg);
transform: rotate(20deg);
position: absolute;
top: 0px;
right: -13px;
}
效果图:

When the mouse first goes over the .tour element, we need to show the price per night, .per-night, and to make it stand out. Let's animate() the opacity to be 1 in our same event handler. This allows us to fade the element in.
$(this).find('.per-night').animate({'opacity':'1'});
The price per night will now fade, but let's make it move a little as well. We can't use slideDown() for this with our animate() call, though. When the mouseenter event is triggered, animate() the top property to -14px in order to move it up a bit.
注意这里写成js对象的格式!
$(this).find('.per-night').animate({'opacity':'1',
'top':'-14px'});
给动画加速!
Let's speed it up to run in 200ms using the 'fast' shorthand.
其实就是animate的第二个参数。可以写数字的毫秒:200,400,600之类的。其中,200和600有快捷方式,jQuery帮我们用fast和slow来表示了。如下代码所示:
$(this).find('.per-night').animate({'opacity':'1',
'top':'-14px'}, 'fast');
动画出现了再打回原型
$(document).ready(function() {
$('.tour').on('mouseenter', function() {
$(this).addClass('highlight');
$(this).find('.per-night').animate({'top': '-14px', 'opacity': '1'}, 'fast');
});
$('.tour').on('mouseleave', function() {
$(this).removeClass('highlight');
$(this).find('.per-night').animate({'top':'0px',
'opacity':'0'}, 'fast');
});
});
try.jquery-5-styling里的各种css样式操作的更多相关文章
- JQuery DOM操作 、属性和CSS样式操作、其他函数
DOM操作 1.在div1内部最后追加一个节点 $("#div1").append("<img src='../01-HTML基本标签/img/Male.gif'/ ...
- js css样式操作代码(批量操作)
js css样式操作代码(批量操作) 作者: 字体:[增加 减小] 类型:转载 时间:2009-10-09 用js控制css样式,能让网页达到良好的的用户体验甚至是动画的效果.并且考虑到效率. ...
- jQuery 源码解析(二十六) 样式操作模块 样式详解
样式操作模块可用于管理DOM元素的样式.坐标和尺寸,本节讲解一下样式相关,样式操作通过jQuery实例的css方法来实现,该方法有很多的执行方法,如下: css(obj) ;参数 ...
- jQuery 源码解析(二十九) 样式操作模块 尺寸详解
样式操作模块可用于管理DOM元素的样式.坐标和尺寸,本节讲解一下尺寸这一块 jQuery通过样式操作模块里的尺寸相关的API可以很方便的获取一个元素的宽度.高度,而且可以很方便的区分padding.b ...
- jQuery 2.0.3 源码分析 样式操作
根据API分类 CSS addClass() jQuery.cssHooks .hasClass() .removeClass() .toggleClass() .addClass() 对元素的样式操 ...
- jQuery使用(二):DOM样式操作和属性操作
DOM取值与赋值 .html() .text() .size() 1.html()方法类似原生DOM的属性innerHTML,不传入参数的时候默认为取指定元素内的HTML内容,包含前后空白文本结构,以 ...
- jquery加载方式,选择器,样式操作
原生js和css不兼容,jquery已经过测试,可放心使用 https://code.jquery.com 这个网站可以下载jquery的源码,比如把源码下载到js文件夹中,文件名为jquery- ...
- 前端CSS样式操作
目录 字体和文字 设置标签的宽高 字体属性 文字的属性 文字对齐 text-align 文字装饰 text-decoration 首行缩进 text-indent 背景属性 背景图片 边框 画圆 di ...
- jquery源码09 (6058 , 6620) css() : 样式的操作
var curCSS, iframe, // swappable if display is none or starts with table except "table", & ...
随机推荐
- C# 根据年月获得此月第一天和最后一天,并计算工作日
string str = "2015年3月"; ); ); , secondIndex - firstIndex - ); , ); DateTime dt = DateTime. ...
- 图的最短路径问题————树上奶牛(tree.cpp)
和往常一样,继续从题目引入 树上奶牛 (tree.cpp) [题目描述] 农夫John的奶牛不是住在地上而是住在树上的QWQ. 奶牛之间需要串门,不过在串门之前他们会向John询问距离的大小.可是Jo ...
- typedef用法总结。
引用贴:http://www.cnblogs.com/csyisong/archive/2009/01/09/1372363.html 首先#define为预处理,与typedef是完全不同的机制.详 ...
- 自定义TabHost,TabWidget样式
先看效果: 京东商城底部菜单栏 新浪微博底部菜单栏 本次学习效果图:
- php curl封装类
一个php curl封装的类,减少代码量,简化采集工作.这个类也是我工作的最常用的类之一.这里分享给大家.配合上phpquery,十分好用. <?php namespace iphp\core; ...
- Python读取PDF内容
1,引言 晚上翻看<Python网络数据采集>这本书,看到读取PDF内容的代码,想起来前几天集搜客刚刚发布了一个抓取网页pdf内容的抓取规则,这个规则能够把pdf内容当成html来做网页抓 ...
- 1011. A+B和C
/* * Main.c * 1011. A+B和C * Created on: 2014年8月30日 * Author: Boomkeeper *********测试通过******* */ #inc ...
- 了解神奇的this
this的用法 在函数中this到底取何值,是在函数真正被调用执行的时候确定的,函数定义的时候确定不了. 因为this的取值是执行上下文环境的一部分,每次调用函数,都会产生一个新的执行上下环境.举例说 ...
- Linux突然断电后文件丢失的问题
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://yuyongid.blog.51cto.com/10626891/168504 ...
- [方法]本来好的中文在winEdt中打开变成乱码
场景:本来在winEdt中使用中文的tex文件,使用xelatex可以编译成pdf,今天打开该tex文件,所有中文变得不可读,统统乱码. 解决方法:在保存tex文件时使用的是utf-8保存的,所以在打 ...