Magic Line在使用键盘上下移动时未使用fullPage.js进行更新
Magic Line Not Updating with fullPage.js when Moving Up and Down w Keypad
我已经组合了Alvaro Trigo的Full Page Scroll,https://github.com/alvarotrigo/fullPage.js和Chris Coyier的Magic Line Navigation,http://css-tricks.com/jquery-magicline-navigation/.几乎让它完全工作,除了当你用箭头键上下滚动时,它会更新活动链接,但魔术线不会更新。所以关闭。。。
这是js小提琴:http://jsfiddle.net/X5juR/
这是魔术线的示例代码
谢谢大家!
$(function() {
var $el, leftPos, newWidth,
$mainNav = $("#menu");
/* Add Magic Line markup via JavaScript, because it ain't gonna work without */
$mainNav.append("<li id='magic-line'></li>");
/* Cache it */
var $magicLine = $("#magic-line");
$magicLine
.width($(".active").width())
.css("left", $(".active a").position().left)
.data("origLeft", $magicLine.position().left)
.data("origWidth", $magicLine.width());
$("#menu li:not('#magic-line') a").hover(function() {
$el = $(this).parent();
leftPos = $el.position().left;
newWidth = $el.width();
$magicLine.stop().animate({
left: leftPos,
width: newWidth
});
},function() {
$magicLine.stop().animate({
left: $magicLine.data("origLeft"),
width: $magicLine.data("origWidth")
});
}).click(function() {
$mainNav.find('li').removeClass('active');
$(this).parent().addClass('active');
$magicLine
.data("origLeft", $magicLine.position().left)
.data("origWidth", $magicLine.width());
});
/* Kick IE into gear */
$(".active a").mouseenter();
});
Magicline不应该以这种方式工作。你需要自己编码。。。
无论如何,看看这个活生生的例子:http://jsfiddle.net/X5juR/1/
我将匿名函数转换为magicLine()
函数,然后使用afterRender
和afterLoad
回调来处理菜单:
// inline script in the head tag
$(document).ready(function () {
var pepe = $.fn.fullpage({
anchors: ['link1', 'link2', 'link3', 'link4', 'link5'],
menu: '#menu',
afterRender: function () {
magicLine();
},
afterLoad: function (anchorLink, index) {
var magicLine = $("#magic-line");
var current = $('#menu').find('li').eq(index-1).find('a');
var el = current.parent();
var leftPos = el.position().left;
var newWidth = el.width();
magicLine.stop().animate({
left: leftPos,
width: newWidth
});
}
});
});
相关文章:
- $rootScope未使用forEach进行更新
- 无法在现有状态转换期间更新-未使用任何非法的setState()
- 角度控制器未使用OcLazyLoad和ngRoute加载
- 绑定到 x 可编辑的成功函数未使用正确的参数执行
- 使用jQuery将单击绑定到页面中未使用的部分
- 未使用Javascript在IE中设置Cookie
- Ionic:AngularJS变量未使用$scope更新DOM
- 元素未使用当前玩家操作进行更新
- 将方法从控制器注入到未使用右变量调用的指令
- LinkedIn共享链接图片未使用自定义url更新
- 地图视图未使用PhoneGap加载
- 组件未使用ReactJS和React Router进行渲染
- 表单未使用 MVC 提交任何值 Asp.Net
- 短信未使用Branch.io和intl tel输入发送到intl号码
- 表列未使用tablesorter插件进行排序
- placeHolder id未使用style.display显示
- 如何忽略单词like“”中的未使用空格;测试-文本”;同时构建html标签
- 表单中的数据未使用javascript中的serialize()获取
- 未使用jQuery验证器选中Css样式复选框时
- Magic Line在使用键盘上下移动时未使用fullPage.js进行更新