所以我们遇到的问题如下。
当我们开始滚动文档时,我们需要使<div id="navButtons">
消失。在我们停止滚动后,相同的 div 应该变得可见。
我们有它在这个链接上工作:http: //jsfiddle.net/zsnfb/9/,但是当我们尝试在 Windows8 应用程序中应用它(使用 MS Expression Blend)时,它就是不起作用 - 应用程序在启动时崩溃。
PS 我们已经包含了所有必要的 .js 并引用了它们。
现在按照此说明http://blog.adamroderick.com/2011/09/jquery-in-a-windows-8-application/不幸的是它不起作用
这是代码
(function() {
"use strict";
// This function is called whenever a user navigates to this page. It
// populates the page elements with the app's data.
function ready(element, options) {
// TODO: Initialize the fragment here.
var b1 = element.querySelector("#ScrollableSection");
b1.addEventListener("mousedown", function(e) {
var buttons = element.querySelector(".visible");
buttons.className = "transparent";
});
}
function ready(element, options) {
var b2 = element.querySelector("#button1");
b2.addEventListener("click", function(e) {
var buttons2 = element.querySelector(".transparent");
buttons2.className = "visible";
});
}
WinJS.UI.Pages.define("/html/homePage.html", {
ready: ready
});
WinJS.Application.start();
$(document).ready(function) {
var $menu = $("#navButtons");
var opacity = $menu.css("opacity");
var scrollStopped;
var fadeInCallback = function() {
if (typeof scrollStopped != 'undefined') {
clearInterval(scrollStopped);
}
scrollStopped = setTimeout(function() {
$menu.animate({
opacity: 1
}, "fast");
}, 300);
}
$(window).scroll(function() {
if (!$menu.is(":animated") && opacity == 1) {
$menu.animate({
opacity: 0
}, "fast", fadeInCallback);
} else {
fadeInCallback.call(this);
}
});
});
})();