【问题标题】:How to use use variables for image folder path如何使用变量作为图像文件夹路径
【发布时间】:2014-02-22 15:33:37
【问题描述】:

我可以在两个变量(例如var path = css/image/var urlpath = /pic/funny/)中有一个图像文件夹路径和一个 url 路径,并将它们分别附加到每个图像和 url 之前,这样我就不必为每个图像重复路径在var picData?

Array.prototype.shuffle = function() {
                var s = [];
                while (this.length) s.push(this.splice(Math.random() * this.length, 1));
                while (s.length) this.push(s.pop());
                return this;
            }

            var picData = [
                ['img1','url_1'],
                ['img2','url_2'],
                ['img3','url_3'],
                ['img4','url_4'],
                ['img5','url_5'],
                ['img6','url_6'],
                ['img7','url_7']];

            picO = new Array();
            randIndex = new Array();  //array of random indexes
            for(i=0; i < picData.length; i++){
                picO[i] = new Image();
                picO[i].src = picData[i][0];
                picO[i].alt = picData[i][1];
                randIndex.push(i);
            }
            randIndex.shuffle();
            window.onload=function(){
                var mainImgs = document.getElementById('carouselh').getElementsByTagName('img');


                for(i=0; i < mainImgs.length; i++){
                    mainImgs[i].src = picO[randIndex[i]].src; //assign a random image
                    mainImgs[i].parentNode.href = picData[randIndex[i]][1];
                    mainImgs[i].alt = picData[randIndex[i]][1];
                }

            }

我尝试过类似mainImgs[i].src = path.picO[randIndex[i]].src; 的方法,但我无法正确使用语法。

【问题讨论】:

    标签: javascript jquery var


    【解决方案1】:

    使用+ 组合变量,而不是.

    var a = "Some";
    var b = "day";
    var c = " we are gone.";
    
    alert(a + " " + b + c);
    

    或者你的例子:

    mainImgs[i].src = path + picO[randIndex[i]].src;
    

    你还需要引用你的变量:

    var urlpath = "/pic/funny/";
    

    【讨论】:

    • @Tomanow: Quote: 我尝试过类似mainImgs[i].src = path.picO[randIndex[i]].src; [...]
    • 它有效。问题解决了!我必须把变量放在window.onload=function(){
    • @user35295:您也可以将脚本放在页面底部或在文档上使用addEventListener("load")。当您使用 jQuery 时,您可以使用 $(document).ready(function(){ /* Put your code for getting DOM elements here. */ }) Ref。 api.jquery.com/ready
    猜你喜欢
    • 2015-07-15
    • 2012-11-01
    • 2019-04-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-20
    相关资源
    最近更新 更多