【问题标题】:Matching a series of strings to a specific image in a series with JQuery使用 JQuery 将一系列字符串与系列中的特定图像匹配
【发布时间】:2014-04-10 22:10:30
【问题描述】:

如果匹配的文本字符串,我会尝试调用特定图像。有没有办法确保每次使用 myArray1 时 myArray1 的值都会从 myArray2 中产生一个特定的值?

$('div').each(function() {
   var myArray1 = [ "word1", "word2" ];
   var myArray2 = [ "img1.jpg", "img2.jpg" ];
        if($('div.condition').text().indexOf(' myArray1 ') != -1 )
          $('div.img').css({'background-image':'url(' + myArray2 + ')'});
        else if($('div.condition').text().indexOf(' myArray1 ') != -1 )
          $('div.img').css({'background-image':'url(' + myArray2 + ')'});

JSFiddle:http://jsfiddle.net/J3tyT/2/

【问题讨论】:

    标签: javascript jquery arrays variables if-statement


    【解决方案1】:

    这很容易解决

    $('div').each(function() {
        if($('div.condition').text().indexOf('SOMEWORD') > -1 )
          $('div.img').css({'background-image':'url("http://www.listofimages.com/someimage.jpg")'});
        else if($('div.condition').text().indexOf('ANOTHERWORD') > -1 )
          $('div.img').css({'background-image':'url("http://www.listofimages.com/another.jpg")'});
    

    使用 > 而不是 !=

    【讨论】:

    • 我的问题格式可能不正确。我想知道是否有某种方法可以阻止自己编写数百个“其他 if 语句”。我会看看我是否可以正确地表达它。
    • 啊,不幸的是,我不相信有,但如果你想做一堆这些,你可以创建一个只保存所有这些的函数,然后从你的 .each 调用函数。
    猜你喜欢
    • 1970-01-01
    • 2014-06-26
    • 1970-01-01
    • 2018-09-13
    • 1970-01-01
    • 2018-10-11
    • 1970-01-01
    • 1970-01-01
    • 2021-04-19
    相关资源
    最近更新 更多