2014-02-27 204 views
-1

我有幾個按鈕(3),當URL中有一個特定的hashtag時出現。問題是,當我使用if, else if語句代碼不完全發揮自己的作用。當哈希標記爲iphone時,出現三個按鈕並附加正確的字符串,但是當我單擊windowsphone時出現三個按鈕,但它們以某種方式帶我回到iphone字符串。hash.indexOf()if else語句

我試過else,else if和所有if的,但沒有任何效果。 windowsphone基本上不會加載HTML標記中的字符串。

iphone按鈕(用URL包括hashtag):http://jsfiddle.net/66kCf/show/#iphone

的WindowsPhone按鈕(用URL包括hashtag):http://jsfiddle.net/66kCf/show/#windowsphone

Origninal的jsfiddle:http://jsfiddle.net/66kCf/

if (hash.indexOf('iphone') != -1) 
{ 
    $("#linkdiv").append(nextLink); 
    $("#linkdiv1").append(nextLink); 
    $("#linkdiv2").append(nextLink); 
} 
else if (hash.indexOf('windowsphone') != -1) 
{ 
    $("#linkdiv3").append(nextLink); 
    $("#linkdiv4").append(nextLink); 
    $("#linkdiv5").append(nextLink); 
} 
+0

'console.log(window.location.hash);' – zerkms

+0

@zerkms將解決我的問題與if語句? – user2680614

+0

@zerkms我從來沒有使用過這個標籤。我應該剪切並粘貼到底是怎麼回事? – user2680614

回答

1

我能看到的唯一問題是您沒有正確關閉plain元素,請不要使用自閉合標籤,它將創建嵌套的dom結構,其中windows純元素嵌套在iphone元素中ENT。

<plain id='linkdiv' href='phone-condition' onclick="location.href = $(this).attr('href')+'?/phone-shipping-method?q1=AppleiPhone&x=103&y=13-ship-it-yourself/#iPhone';return false" ></plain> 

演示:Fiddle

使用瀏覽器開發者工具檢查生成的HTML你可以看到標記被錯誤地嵌套其中一個plain元素嵌套在另一個

所以不是<plain ..... />使用<plain ....></plain>

+1

非常感謝。問題解決了。 – user2680614