编辑:事实证明问题不一定是由于我的代码。当我点击导航栏中的链接时,除了Chrome之外,每个浏览器都会移至mobile / folder / page.html。当我点击Chrome中的链接时,由于某种原因,它会打开到/mobile/#/mobile/folder/page.html,这就是为什么它不起作用。如果我直接进入页面它工作正常。有谁知道如何解决这个问题?
此代码适用于我的每个浏览器,适用于Android手机,但不适用于iPhone。我尝试添加点击和触摸而不是onClick,切换而不是隐藏和显示,添加onclick到css,并添加cursor:指向css的指针,但我找不到解决方案。也许我加错了但我不确定。请帮忙!
https://jsfiddle.net/anthonyparrett7/0bmw79yw/
$(document).ready( function() {
/* Question and Answer Dropdowns */
$(".dropdown-link").click(function(e) {
e.preventDefault();
var $div = $(this).next('.dropdown-container');
$(".dropdown-container").not($div).hide();
if ($div.is(":visible")) {
$div.hide()
} else {
$div.show();
}
});
$(document).click(function(e){
var p = $(e.target).closest('.dropdown').length
if (!p) {
$(".dropdown-container").hide();
}
});
});
答案 0 :(得分:0)
你没有在页面加载时正确调用该函数。
尝试使用$(document).ready(function()
代替$(document).on("pageinit", "#page-container", function()
请参阅此代码段:
$(document).ready(function() {
$(".dropdown-link").click(function(e) {
var $div = $(this).next('.dropdown-container');
$(".dropdown-container").not($div).hide();
if ($div.is(":visible")) {
$div.hide()
} else {
$div.show();
}
});
$(document).click(function(e) {
var p = $(e.target).closest('.dropdown').length
if (!p) {
$(".dropdown-container").hide();
}
});
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="dropdown-1" class="dropdown dropdown-processed">
<div class="dropdown-link">
<h4>What is a Question?</h4>
</div>
<div class="dropdown-container" style="display: none;">
<p>Bla bla bla blablablabla words Ipsum</p>
</div>
</div>
<div id="dropdown-2" class="dropdown dropdown-processed">
<div class="dropdown-link">
<h4>What is a Question 2?</h4>
</div>
<div class="dropdown-container" style="display: none;">
<p>Bla bla bla blablablabla words Ipsum</p>
</div>
</div>
&#13;
答案 1 :(得分:0)
你有没有尝试过简单的东西:
$(document).ready( function() {
$(".dropdown-link").click(function(e) {
$(".dropdown-container").hide();
$(this).next(".dropdown-container").toggle();
});
$(document).click(function(e) {
var p = $(e.target).closest('.dropdown').length
if (!p) {
$(".dropdown-container").hide();
}
});
});