0

我正在尝试在 Windows Application Js App 中按顺序显示图像。脚本如下。这在记事本中有效,但在“.net”中无效。我在主文件夹中添加了单独的文件“scrolling.js”,下面的代码就在其中。错误指向 rotator.src 。我错过了什么吗?

 <body>
        <!-- The content that will be loaded and displayed. -->
        <div class="fragment homepage">
            <header aria-label="Header content" role="banner">
                <button class="win-backbutton" aria-label="Back" disabled type="button"></button>
                <h1 class="titlearea win-type-ellipsis">
                    <span class="pagetitle">Welcome to AppTweenMax!</span>
                </h1>
            </header>
            <section aria-label="Main content" role="main">
                <div id="demo">Content goes here.</div>
                <img src="imagesroll/1.png" alt="rotating image" width="640" height="960" id="rotator">
                          </section>     


        </div>    
      <script type="text/javascript">
            (function () {
                var rotator = document.getElementById('rotator');  // change to match image ID
                var imageDir = 'imagesroll/';                          // change to match images folder
                var delayInSeconds = 2;                            // set number of seconds delay
                // list image names
                var images = ['2.png', '3.png', '4.png', '5.png', '6.png', '7.png'];

                // don't change below this line
                var num = 0;
                var changeImage = function () {
                    var len = images.length;
                    var src = imageDir + images[num++];       
                    document.getElementById('rotator').src = "" + src;
                    rotator.src = src;
                    if (num == len) {
                        num = 0;
                    }
                };
                setInterval(changeImage, delayInSeconds * 1000);
            })();
    </script>
    </body>
4

2 回答 2

0

兄弟,你必须删除这一行 --> rotator.src = src; 你的代码有效!

于 2013-06-08T20:29:03.923 回答
0

如果要旋转一组静态图像,则需要将它们添加到 windows 商店应用程序项目中。使用add existing items->add as link添加图像。这假定所有图像都在一个文件夹中<myprojectdir>\images。确保right click-> properties->package action设置为“内容”。这将确保图像被打包为应用程序包的一部分。

然后,使用图像路径,就像/images/1.png假设您在项目中的“图像”文件夹下有图像。你也可以使用绝对路径ms-appx:///images/1.png

此代码有效:

var rotator = document.getElementById('rotator');  // change to match image ID
var imageDir = 'images/';                          // change to match images folder
var delayInSeconds = 2;                            // set number of seconds delay
// list image names
var images = ['2.png', '3.png', '4.png', '5.png', '6.png', '7.png'];

var num = 0;
var changeImage = function ()
{
    var len = images.length;
    var src = 'ms-appx:///' + imageDir + images[num++];
    rotator.src = src;
    if (num == len)
    {
        num = 0;
    }
};
setInterval(changeImage, delayInSeconds * 1000);
于 2013-05-29T11:18:07.680 回答