当网址中有某个标签时,我会看到几个按钮(3)。问题是,当我使用if, else if
语句时,代码不能发挥作用。当哈希标记为iphone
时,会出现三个按钮并附加正确的字符串,但当我单击windowsphone
时会出现三个按钮,但它们会以某种方式将我带回iphone
字符串。
我尝试了else
,else if
和所有if
,但没有任何效果。基本上,windowsphone
不会在HTML标记中加载它的字符串。
iphone按钮(网址中带有主题标签):http://jsfiddle.net/66kCf/show/#iphone
windowsphone按钮(在网址中包含#标签):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 :(得分:1)
我能看到的唯一问题是你没有正确关闭plain
元素,不要使用自闭关标签,它创建一个嵌套的dom结构,其中windows plain元素嵌套在一个iphone元素中。 / p>
<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>