使用%用单按钮JavaScript函数交换图像

Swap images with single button JavaScript function using %

本文关键字:JavaScript 函数 交换 图像 按钮 单按钮 使用      更新时间:2023-09-26

各位程序员!祝你度过一个美好的下午(不管怎样)!在其他用户的帮助下,我能够每隔几秒钟让一张图像在第二张图像之间来回切换。太棒了!因此,我用%运算符计算了一些数学运算,果不其然,当图像第一次显示时,我得到了浏览器的默认断开链接图像,但在2秒钟后,一切都按计划进行。于是,这个调查性实验开始了。我决定不自动交换,而是用一个按钮进行交换,这样我就可以随心所欲地调查页面。但谁想再次做同样的事情,为什么不在这一过程中学习另一个很酷的技巧呢。这个技巧是同时显示两个图像,这样当点击按钮时,它们就会交换位置。相同的数学,不同的用户效果。真是太棒了!

目标:显示两个图像,在它们下面显示一个按钮。单击该按钮后,图像将交换位置。左边的图像应该在右边,右边的图像现在应该在左边。不使用jQuery,这毕竟是一个JavaScript实验(我还没有学到很多jQuery,但我迫不及待地想达到目的!)

浏览器错误控制台消息:有趣的是,萤火虫什么都没给我。我打开浏览器,从VS 2012加载页面,清除错误代码,刷新页面。什么都没有。然而,在chrome(我的默认浏览器)中,我得到了一个未找到的localhost-pic-src404。我觉得这很奇怪,因为这个代码在一个页面上,恰好有其他代码引用了相同的图片,并且运行良好。2秒的自动img翻转是其他代码中的一部分。

调试:我很想知道这是怎么回事。我得到了基本的想法,并对其进行了一些研究。在VS网站上,有关于设置断点和运行VS的多个实例以使用另一个引擎的所有信息。我很快就会在youtube上讨论这个问题。然而,我很抱歉,如果有一些简单的调试修复,我应该亲眼目睹它

以下是我发现与我的问题相似的文章。这有助于了解他们是如何设置if-else的:https://stackoverflow.com/questions/15671442/swap-image-with-onclick-not-responding总之,我读得更多,显然这位作家比我更先进。第二个:javascript交换文本块onclick锚链接我认为有点信息过载。这里面发生了很多事情,但在通读之后,我从未设法更改过任何代码

如果你好奇的是我简要提到的VS文章:http://blogs.msdn.com/b/visualstudioalm/archive/2013/06/28/javascript-native-interop-debugging-in-visual-studio-2013.aspx

这是我的代码:

 <script type="text/javascript">
            function swap_pics() {
                var c = 1
                //I had:
                //var andy_arr = ["andy_white.jpg","andy_black.jpg"];
                var andy_src1 = "andy_left.jpg";
                var andy_src2 = "andy_right.jpg";
                c = ((c + 1) % 2);
                if (c == 0) {
                    //I was using an array which looked like:
                    // document.getElementById('andy_left').src = "andy_arr[0]";
                    // document.get ... _right').src = andy_arr[Math.abs(c-1)];
                    //0-1 abs = 1
                    //1-1 = 0, so It looks like it should now toggle.
                    document.getElementById('andy_left').src = andy_src1;
                    document.getElementById('andy_right').src = andy_src2;
                }
                else {
                    document.getElementById('andy_left').src = andy_src2;
                    document.getElementById('andy_right').src = andy_src1;
                }
            }
        </script>    
        <div id="mini_lab_5">
        <img src="" 
            id="andy_left"
            height="100"
            width="100"
            />
        <img src=""
            id="andy_right" 
            height="100"
            width="100"
            />
        <br />
        <input type="button" value="Swap" 
            onclick="swap_pics();
    "/>
    </div>

感谢你成为社区的一员,让它变得伟大!

您可以直接将图像添加到img标签中,如下所示:

<img src="andy_left.jpg" 
            id="andy_left"
            height="100"
            width="100"
            />
        <img src="andy_right.jpg"
            id="andy_right" 
            height="100"
            width="100"
            />

然后你的图片应该默认显示在你的页面上,如果没有,你的图片链接不好。

然后,您可以用以下内容替换当前的swap_pics功能:

function swap_pics() {
                var andy_left = document.getElementById('andy_left'),
                    andy_right = document.getElementById('andy_right'),
                    andy_left_src = andy_left.src,
                    andy_right_src = andy_right.src;
                andy_left.src = andy_right_src;
                andy_right.src = andy_left_src;
            }

下面是一个简单的jsfiddle:http://jsfiddle.net/X9YTP/

祝你好运。

<html>
<head>
<script type="text/javascript">
function switchImage () {
    var imgleft = document.getElementById('image1'),
        imgright = document.getElementById('image2'),
        img_left_src = imgleft.src,
        img_right_src = imgright.src;
    imgleft.src = img_right_src;
    imgright.src = img_left_src;
}
</script>
</head>
<body>
    <div>
        <img id="image1" src="./home-cat.jpg" />
        <button id="butnum" onclick="switchImage();">Switch</button>
        <img id="image2" src="./images.jpeg" />
    </div>
</body>
</html>