【发布时间】:2019-07-03 21:16:15
【问题描述】:
我的网站包含一个使用 ajax 加载不同页面的 div。单击按钮时,可以加载新页面,并且页面始终显示在该 div 中。
问题是如果我转到一个新页面并向下滚动而不滚动回该页面的顶部,新页面将加载到页面顶部下方的相同位置,而不是页面顶部。我想强制所有页面加载到顶部。
以下是相关的页面元素:
div(页面内容所在的地方):
<div class="main_text">
<div id="C2"><span style="color:black">MTX</span></div>
</div>
按钮:
<div class="C1"><br><button class="button_01" id="btn07" onclick="HideDropdown(); ShowAjax(7);">Page 7</button></div>
AJAX 代码:
<script>
function ShowPage(type) {
var filename = "page_" + type + ".htm"
$( "#C2" ).hide().load( filename ).fadeIn(500);
}
</script>
最重要的一行是:
$( "#C2" ).hide().load( filename ).fadeIn(500);
在我拥有的每一页的顶部:
<div id="bkmk00"></div>
我想打开页面顶部的每个页面(在“bkmk00”处)。我看到一个帖子说我可以添加一个 id 名称,它会加载该 ID 的页面:
$( "#C2" ).hide().load( filename "bkmk00" ).fadeIn(500);
但是,它不会加载任何内容。相反,Firefox 67 开发控制台会为这个 ajax 函数调用显示“SyntaxError: missing ) after argument list”,它指向文件名后面的字符 37。看起来我无法添加第二个参数“bkmk00”。
我的问题是,如何在要加载的页面顶部的“bkmk00”处加载页面?
【问题讨论】:
-
您在“.htm”之后缺少行终止;
-
@IMustBeSomeone - ajax 调用在上面,在
-
文件名“bkmk00”,您缺少“#bkmk00”
标签: javascript jquery ajax