0

我使用 HTML 和 JavaScript 创建了一个 Windows 8 应用程序。

在这里,我想从屏幕右侧向左滑动一个 div [包含两个文本框和一个按钮]。

希望问题很清楚。

4

4 回答 4

1

jQuerys$.animate很好,请参见此处

但是,由于安全限制,在 Windows 8 应用程序中使用 jQuery 是有问题的,我已经写了一篇博客文章,并在那里提供了一个 Windows 8 就绪的 jQuery 版本,看看: http: //www.incloud.de/2012/ 08/windows-8-using-jquery-for-app-development/

于 2012-12-13T09:59:12.587 回答
1

这是使用 CSS 过渡的示例。

/* CSS */
#myDiv {
    width:300px;
    height:300px;
    box-sizing:border-box;
    position:relative;
    left:-300px;
    border:2px solid;
    transition:1s;
}

然后在 JavaScript 中,您只需以left编程方式设置属性。就我而言,我这样做是为了响应按钮单击。

// js
element.querySelector("#go").onclick = function(e) {
    element.querySelector("#myDiv").style.left = "0px";
};

你有它。硬件加速和一切。

于 2012-12-14T02:42:49.423 回答
1

考虑使用 WinJS 原生动画库。对于您来说,WinJS.UI.Animation.enterContentWinJS.UI.Animation.showPanel可能很有用。

于 2012-12-20T18:05:58.630 回答
0

使用以下代码解决了问题:

CSS:
  position: fixed;  
  right: 0px;
  top: 0px;
  width: 308px;
  height: 100%;
  color: white;
  background-color: bisque;
  opacity: 0;
  z-index: 1;

然后在 JavaScript 中,我刚刚将 opacity 属性设置为 1。

JS:

 (function () {
 "use strict";
 var page = WinJS.UI.Pages.define("/default.html", {
     ready: function (element, options) {
         btnname.addEventListener("click", togglePanelUI, false);

         myPanel = element.querySelector("#divname");        }     //div name is name of div which u wants to slide
 });

 var animating = WinJS.Promise.wrap();
 var myPanel;
 function togglePanelUI() {               // If element is already animating, wait until current animation is complete before starting the show animation.
     animating = animating
        .then(function () {
            // Set desired final opacity on the UI element.
            myPanel.style.opacity = "1";

            // Run show panel animation.
            // Element animates from the specified offset to its actual position.
            // For a panel that is located at the edge of the screen, the offset should be the same size as the panel element.
            // When possible, use the default offset by leaving the offset argument empty to get the best performance.
            return WinJS.UI.Animation.showPanel(myPanel);
        });

}
})();

有关 Windows 8 动画的更多信息,请查看此处

于 2012-12-17T07:26:39.783 回答