/*封装$*/
// window.$=HTMLElement.prototype.$=function(selector){
// var elems=(this==window?document:this)
// .querySelectorAll(selector);
// return elems.length==0?null:elems.length==1?elems[0]:elems;
// }
/*广告图片数组*/
var imgs=[
{"i":0,"img":"images/index/banner_01.jpg"},
{"i":1,"img":"images/index/banner_02.jpg"},
{"i":2,"img":"images/index/banner_03.jpg"},
{"i":3,"img":"images/index/banner_04.jpg"},
{"i":4,"img":"images/index/banner_05.jpg"},
];
var adv={
LIWIDTH:0,
$ulImages:null,
INTERVAL:1000,
WAIT:3000,
timer:null,
init:function () {
this.LIWIDTH=parseFloat($('#slider').css("width"));
this.$ulImages=$("#imgs");
this.updateView();
$("#indexs").on("mouseover","li",(e)=>{
var target=$("#indexs>li").index(e.target); var old=imgs[0].i; this.move(target-old);
});
this.autoMove(); },
autoMove:function(){
this.timer=setTimeout(
()=>this.move(1),this.WAIT
); },
movePre:function(n){
n*=-1;
imgs=imgs.splice(-n,n).concat(imgs);
this.updateView();
this.$ulImages.css("left",parseFloat(this.$ulImages.css("left"))-n*this.LIWIDTH); },
move:function (n) {
clearTimeout(this.timer);
if(n<0){
this.movePre(n);
this.$ulImages.stop(true);
this.$ulImages.animate({left:0},this.INTERVAL,()=>this.autoMove())
}else {
this.$ulImages.stop(true);
this.$ulImages.animate({left:-n*this.LIWIDTH},this.INTERVAL,
()=>this.moveCallback(n) ); } }, moveCallback:function (n) {
imgs=imgs.concat(imgs.splice(0,n));
this.updateView();
this.$ulImages.css("left",0);
this.autoMove(); },
updateView:function(){
for(var i=0 ,lis='',idxs='';i<imgs.length;i++)
{
// lis+='<li> <img src='+imgs[i].img+'></li>';
lis+=`<li> <img src=" ${imgs[i].img}"></li>`; idxs+='<li></li>'; }
this.$ulImages.html(lis).css("width",imgs.length*this.LIWIDTH);
$("#indexs").html(idxs);
// $("#indexs").children(":nth-child("+imgs[1].i+")").addClass("hover");
$("#indexs").children(`li:eq(${imgs[0].i})`).addClass("hover"); }
};
adv.init();

 今天在写轮播图的时候发现了jquery的一个小问题,很希望和大家进行交流一下,

上面是轮播图的js代码,和奇怪的是:

this.$ulImgs.css("left",0);
this.autoMove();//启动自动轮播

这种写法轮播图会有滑动的效果。

this.$ulImgs.attr("left",0);
this.autoMove();//启动自动轮播

这种写法就没有滑动的效果,但是也是轮播,不平滑。

找了有些资料如下

<a href="#" style="xxx" title="" alt="">xxx</a>

两个不相同呀,css是和style有关,attr是都可以获取,比如上面href,title,alt.

既然attr可以同时获取不能设置吗?????????????

jquery里面的attr和css来设置轮播图竟然效果不一致的更多相关文章

  1. HTML+CSS+Javascript实现轮播图效果

    HTML+CSS+Javascript实现轮播图效果 注意:根据自己图片大小来更改轮播图大小. <!doctype html> <html> <head> < ...

  2. 用html +js+css 实现页面轮播图效果

    html 页面 <html lang="en"> <head> <meta charset="UTF-8"> <met ...

  3. JavaScript+HTML+CSS 无缝滚动轮播图的两种方式

    第一种方式 在轮播图最后添加第一张,一张重复的图片. 点击前一张,到了第一张,将父级oList移动到最后一张(也就是添加的重复的第一张),在进行后续动画. 点击下一张,到了最后一张(也就是添加的重复的 ...

  4. css动画属性--轮播图效果

    通过css的动画属性实现轮播图的显示效果 代码如下: 主体部分: <div id="move"> <ul> <li><img src=&q ...

  5. css3 - 纯css实现一个轮播图

    这是我上一次的面试题.一晃两个月过去了. 从前都是拿原理骗人,把怎么实现的思路说出来. 我今天又被人问到了,才想起来真正码出来.码出来效果说明一切: 以上gif,只用到了5张图片,一个html+css ...

  6. 纯HTML和CSS实现JD轮播图

    博主使用了纯HTML和CSS实现了JD的轮播图,没有加动态效果,主要是使用了定位的知识.  ,如图为两个侧边箭头图片(其实实际中应该使用CSS3的图标字体,这里没有使用). <!DOCTYPE ...

  7. jQuery实现简易轮播图的效果

    (图片素材取自于小米官网) 刚开始接触jQuery的学习,个人觉得如果为了实现多数的动态效果,jQuery的确很简易方便. 下面简易的轮播图效果,还请前辈多多指教~ (努力学习react vue an ...

  8. JQuery和html+css实现带小圆点和左右按钮的轮播图

    是的!你没看错!还是轮播图.这次的JQuery的哟!! CSS代码: /*轮播图 左右按钮 小白点*/ #second_div{ margin-top: 160px; } .img_box{ over ...

  9. Jquery 轮播图简易框架

    =====================基本结构===================== <div class="carousel" style="width: ...

随机推荐

  1. There is no getter for property named 'userSpAndSp' in 'class com.uauth.beans.UserSpAndSp'

    mybatis 报错There is no getter for property named 'userSpAndSp' in 'class com.uauth.beans.UserSpAndSp' ...

  2. are both mapped to the url-pattern 错误解决方法

    今天运行tomcat的时候出现报了一大波错误,下面我截取了部分错误信息: 严重:A child container failed during start java.util.concurrent.E ...

  3. mybatis 入门进阶之 mapper

    由于上节 <mybatis 入门优化>中的dao实现类耦合了user.xml中的statment的id,例如:src.main.resource.userMapper.findUserBy ...

  4. .NET中的类库

    1.object类  所有类都继承于object类,是顶级父类,他有以下成员,都是虚方法:  a)   ToString() 默认输出对象所属类的全名称(命名空间.类名) b)   Equals (O ...

  5. ASP.NET上传大文件出现网页无法显示的问题

    使用FileUpload上传的时候,默认允许大小是4M,而当小于4M的时候正常运行:当超过4M将显示网页无法显示.解决方法如下: 在web.config中的<system.web>< ...

  6. .Net多线程编程—同步机制

    1.简介 新的轻量级同步原语:Barrier,CountdownEvent,ManualResetEventSlim,SemaphoreSlim,SpinLock,SpinWait.轻量级同步原语只能 ...

  7. java基础练习 5

    import java.util.Scanner; public class Fifth { /*输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组.*/ public static ...

  8. 有关css3的一些问题

    CSS3新特性(阴影.动画.渐变.变形.伪元素等) CSS3与页面布局学习总结--CSS3新特性(阴影.动画.渐变.变形.伪元素等)     目录 一.阴影 1.1.文字阴影 1.2.盒子阴影 二.背 ...

  9. 3-this关键字

    1.表示类中的属性和调用方法 package com.example; /** * Created by Y on 16/4/13. */ public class People { private ...

  10. Hadoop基本命令详解

    调用文件系统(FS)Shell命令应使用bin/hadoop fs <args>的形式.所有的的FS shell命令使用URI路径作为参数.URI路径详解点击这里. 1.cat 说明:将路 ...