2014-10-03 40 views
-1

嗨,大家好,我制作了2个网站,根据数组我已经编程了徽标应该改变。我正在尝试为此使用JavaScript。根据IF,ELSE语句更改JavaScript徽标

场地变量已被编程并正常工作,所以我只需要填写if语句下的部分。这些徽标都具有相同的类,因为它们将完全插入同一个点,但显然会根据if语句是否为true而发生更改。

我如何得到这个if语句来处理图像?任何建议都会很棒。

这里我的代码:

<script type="text/javascript"> 
       //this not working yet changes the logo depending on the selected location 
      if (venue = "london"){ 
      //SOMETHING TO OUTPUT PICTURE ? 
      } 
      else if (venue = "Manchester") 
      { 
       //SOMETHING TO OUTPUT PICTURE? 

      </script> 
        //THIS IS MY IMAGES 
        <img class="logo1" src="image1"/> 
         <img class="logo1" src="image2"/> 
+0

在哪里你想加载图像? – DevelopmentIsMyPassion 2014-10-03 17:25:38

+0

因为标志需要根据其已经开发的场地阵列上改变..所以,如果场地是伦敦,我需要显示不同的标志,如果在曼彻斯特 – 2014-10-03 17:26:33

回答

2

简单地做这样的事情,与attr()方法在jQuery的帮助

jQuery的

$('img.logo1').attr('src',venue=='london'?'image1':(venue=='Manchester'?'image2':'')); 


你也可以尝试以下m ethod如评论所说的 Ismael Miguel

var imgs={london:'image1',manchester:'image2'}; 
$('img.logo1').attr('src',imgs[(venue+'').toLowerCase()]); 

HTML

<img class="logo1" src=""/> 
+2

为什么不'VAR IMGS = {伦敦的场地:“图像1”,曼彻斯特: '图像2'}; 。[...] ATTR( 'SRC',IMGS [(场地+ '')toLowerCase()。]);'? – 2014-10-03 17:29:39

+0

@IsmaelMiguel也不错的主意 – 2014-10-03 17:31:19

+0

你可以把它添加到你的答案,由''


分离。 – 2014-10-03 17:37:59

1

使用比较操作==,而不是赋值运算符=

+0

对图像没有帮助,但仍然是一个好点。 – 2014-10-03 17:27:13

0

你不是一个单一的测试相等=。尝试改变

if (venue = "london"){ 
//SOMETHING TO OUTPUT PICTURE ? 
} 
else if (venue = "Manchester") 
{ 
//SOMETHING TO OUTPUT PICTURE? 

if (venue === "london"){ 
//SOMETHING TO OUTPUT PICTURE ? 
} 
else if (venue === "Manchester") 
{ 
//SOMETHING TO OUTPUT PICTURE? 

退房此链接:http://www.w3schools.com/js/js_comparisons.asp

0

您可以通过多种可能的方式做到这一点。我recommande你是添加类您的图像,像这样:

HTML

<img class="logo1 hidden london" src="image1"/> 
<img class="logo1 hidden manchester" src="image2"/> 

CSS

.hidden{display:none} 

** * JS

if (venue == "london"){ 
    $('.london').removeClass('hidden'); 
} 
else if (venue == "Manchester") 
{ 
    $('.manchester').removeClass('hidden); 
} 
+0

隐藏关闭报价缺失。另外,如果对应用程序很重要,那么有些解决方案不涉及每次加载两个图像。 – Ben 2014-10-03 17:30:48