jQuery全屏滚动插件fullPage.js使用中遇到的问题
Posted 木西梧
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jQuery全屏滚动插件fullPage.js使用中遇到的问题相关的知识,希望对你有一定的参考价值。
1.fullPage.js是什么?
fullPage.js 是一个基于 jQuery ,用来制作全屏网站的插件。
2.兼容性:
- jquery兼容:兼容 jQuery 1.7+
- 浏览器兼容: IE8+,Chrome,FireFox
3.问题:
根据使用文档,轻松实现了全屏,但是当在某一屏中,内部的子元素中需要实现滑动的轮播效果,一开始,我就直接在$(document).ready()里面写方法,但是网页上除了按钮可以变色外,没有任何滑动效果。经过调试,发现按钮点击事件是进去了的,但就是感觉实现滑动那一块代码没有效果。
首先,重新查阅API,发现有个屏内分屏的功能,只需要添加样式slide即可,终于可以滑动了,然而,却发现,按钮点击不准确,如果有3屏,当点击第1个按钮时,并没有提示什么,点击第2个时,才提示index为1,导致最后一屏始终无法显示,也就是说页面是后延了。研究了很久,没有找到解决方法。本来,这个效果用fullpage自带的slide实现是不合适的。因为,滑动的元素并不是完全占一屏,它只是按钮切换后才显示的。
后来,我通过stackOverflow搜索fullpage相关的问题,发现有个问题和我的很像,“My other plugins don‘t work when using fullPage.js”,回答里介绍了一个网址,https://github.com/alvarotrigo/fullPage.js/wiki/FAQ---Frequently-Answered-Questions,从中我终于明白了原因所在。大概意思是,fullPage.js会把这些元素包裹在一个随时可改变自身位置的元素中,所以这些元素就成为了动态添加的元素,而大多数插件则需要靶元素最初保持在原位,才能正常执行。
所以解决方法就是:在fullPage.js的afterRender回调方法里,初始化插件或者jquery事件。
并不是所有的插件或者jquery事件都必须在fullPage.js的afterRender里初始化,涉及改变位置的才需要。
以上是关于jQuery全屏滚动插件fullPage.js使用中遇到的问题的主要内容,如果未能解决你的问题,请参考以下文章
jQuery-全屏滚动插件fullPage.jsAPI 使用方法总结