How to slide pictures left and right in js
This article mainly introduces in detail the js implementation of the left and right sliding effect of mobile web pictures. It has a certain reference value. Interested friends can refer to it.
I am currently working on a mobile web site. , there is a picture display effect in it:
1. When you click on any picture, the picture will be displayed in full screen. Swipe left and right to display other pictures.
2. If the slide exceeds a certain range, it will automatically slide to the next picture. If the slide does not exceed a certain range, it will return to the current photo position. The sliding effect here needs to be animated
Implementation:
There is a p outside each picture, set its width to 100%, and there is a p[ on the outermost layer Named outerp], and its width is set to: total number of pictures * 100 '%'. Set the touchstart, touchmove, and touchend event listening processing functions for the outermost p. In touchmove, dynamically change the x-axis distance of outerp according to the moving x-axis distance to achieve the picture sliding effect. In touchend, determine the sliding distance based on the current sliding distance. The next picture still returns to the current picture position.
Before we could set the position attribute of outerp and then change the left value to achieve the movement effect. Here I use the CSS3 animation function transform, which is simple and can achieve animation effects
transform parameter :
-webkit-transform:translate(100px,200px) tr //可以设置x、y轴方向移动距离 -webkit-transform:translateX(100px) translateY(200px) translateZ(3000px) //可以设置x、y、z轴方向移动距离.3D效果 -webkit-transition:.4s ease;//设置动画时间
Define animation time:
.transition { -webkit-transition:.4s ease; -moz-transition:.4s ease; -ms-transition:.4s ease; -o-transition: .4s ease; transition:.4s ease; }
Key code:
var touchOption={touchStartX:0,startTranslateX:0,moveDistance:0};
1, touchstart
outerp.addEventListener('touchstart',function(){ $(this).removeClass('transition');//移除动画效果,否则移动时图片会颤动 touchOption.touchStartX = e.touches[0].clientX; if ($(this).css("-webkit-transform") == 'none') { touchOption.startTranslateX = 0; } else { //css-webkit-transform属性值格式:matrix(1, 0, 0, 1, -4140, 0) var transfrom_info = $('.sourcePhotop').css("-webkit-transform").split(',')[4];//获取当前outerp的x轴坐标 touchOption.startTranslateX = parseInt(transfrom_info); } },false);
2, touchmove
outerp.addEventListener('touchmove',function(){ touchOption.moveDistance = (e.touches[0].clientX - touchOption.touchStartX); var TranslateX = touchOption.startTranslateX + touchOption.moveDistance; $(this).css('-webkit-transform', 'translateX('+ TranslateX +'px) translateZ(0)'); //移动图片 },false);
3 , touchend
outerp.addEventListener('touchend',function(){ $(this).addClass('transition);//添加动画效果 var moveX=100;//此处计算移动移动下一张图片还是退货当前图片代码省略 $(this).css('-webkit-transform', 'translateX('+ moveX +'px) translateZ(0)'); //移动图片 },false);
Summary:
1. The animation parameters and effects of outerp are dynamically added by js and do not need to be defined in advance.
2. Use translate( When using parameters such as The format is translateX(moveX) ranslateZ(0). If moveX uses a percentage value, such as '50%', there will be no animation effect in the android mobile phone automatic browser and uc browser, and it will be normal if the px unit value is used.
In order to prevent the image from shaking during movement and ensure the animation effect, it is recommended that you use parameters such as translateX(100px) ranslateZ(0), and use the px value for the moving distance
The above is what I compiled for you Yes, I hope it will be helpful to everyone in the future.
Related articles:
Detailed interpretation of how layui parent-child windows pass parametersHow to implement image component picture adaptation in WeChat applet Display Problems related to cross-domain request failure in VUE Mobile Music WEBAPPThe above is the detailed content of How to slide pictures left and right in js. For more information, please follow other related articles on the PHP Chinese website!

JavaScript runs in browsers and Node.js environments and relies on the JavaScript engine to parse and execute code. 1) Generate abstract syntax tree (AST) in the parsing stage; 2) convert AST into bytecode or machine code in the compilation stage; 3) execute the compiled code in the execution stage.

The future trends of Python and JavaScript include: 1. Python will consolidate its position in the fields of scientific computing and AI, 2. JavaScript will promote the development of web technology, 3. Cross-platform development will become a hot topic, and 4. Performance optimization will be the focus. Both will continue to expand application scenarios in their respective fields and make more breakthroughs in performance.

Both Python and JavaScript's choices in development environments are important. 1) Python's development environment includes PyCharm, JupyterNotebook and Anaconda, which are suitable for data science and rapid prototyping. 2) The development environment of JavaScript includes Node.js, VSCode and Webpack, which are suitable for front-end and back-end development. Choosing the right tools according to project needs can improve development efficiency and project success rate.

Yes, the engine core of JavaScript is written in C. 1) The C language provides efficient performance and underlying control, which is suitable for the development of JavaScript engine. 2) Taking the V8 engine as an example, its core is written in C, combining the efficiency and object-oriented characteristics of C. 3) The working principle of the JavaScript engine includes parsing, compiling and execution, and the C language plays a key role in these processes.

JavaScript is at the heart of modern websites because it enhances the interactivity and dynamicity of web pages. 1) It allows to change content without refreshing the page, 2) manipulate web pages through DOMAPI, 3) support complex interactive effects such as animation and drag-and-drop, 4) optimize performance and best practices to improve user experience.

C and JavaScript achieve interoperability through WebAssembly. 1) C code is compiled into WebAssembly module and introduced into JavaScript environment to enhance computing power. 2) In game development, C handles physics engines and graphics rendering, and JavaScript is responsible for game logic and user interface.

JavaScript is widely used in websites, mobile applications, desktop applications and server-side programming. 1) In website development, JavaScript operates DOM together with HTML and CSS to achieve dynamic effects and supports frameworks such as jQuery and React. 2) Through ReactNative and Ionic, JavaScript is used to develop cross-platform mobile applications. 3) The Electron framework enables JavaScript to build desktop applications. 4) Node.js allows JavaScript to run on the server side and supports high concurrent requests.

Python is more suitable for data science and automation, while JavaScript is more suitable for front-end and full-stack development. 1. Python performs well in data science and machine learning, using libraries such as NumPy and Pandas for data processing and modeling. 2. Python is concise and efficient in automation and scripting. 3. JavaScript is indispensable in front-end development and is used to build dynamic web pages and single-page applications. 4. JavaScript plays a role in back-end development through Node.js and supports full-stack development.


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

SublimeText3 English version
Recommended: Win version, supports code prompts!

ZendStudio 13.5.1 Mac
Powerful PHP integrated development environment

Safe Exam Browser
Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.

SublimeText3 Chinese version
Chinese version, very easy to use

EditPlus Chinese cracked version
Small size, syntax highlighting, does not support code prompt function
