Javascript (窗口)。scrollTop功能不会在第一次单击时启动
我有一个可点击的条形图,当它被点击时,它会启动mainQuestBarClick功能。在这个函数中,我有一行$window.scrollTop$'scrollHere'。offset.top;滚动到scrollHere div。当我单击工具栏时,它不会滚动到那里,但当我第二次单击它时,它会滚动。原因可能是什么 以下是函数:Javascript (窗口)。scrollTop功能不会在第一次单击时启动,javascript,jquery,Javascript,Jquery,我有一个可点击的条形图,当它被点击时,它会启动mainQuestBarClick功能。在这个函数中,我有一行$window.scrollTop$'scrollHere'。offset.top;滚动到scrollHere div。当我单击工具栏时,它不会滚动到那里,但当我第二次单击它时,它会滚动。原因可能是什么 以下是函数: var mainQuestBarClick = function (event, pos, obj) { if (!obj) retu
var mainQuestBarClick = function (event, pos, obj) {
if (!obj)
return;
$(window).scrollTop($('#scrollHere').offset().top);
//goToByScroll($("#scrollHere").attr("id"));
var selectedBranchName = encodeURIComponent(obj.series.label);
$("#SelectedBranchFromBarChart").val(selectedBranchName);
$("#content").block();
//Stats Chart
$.ajax({
type: "GET",
url: '@Url.Action("GetStatsForSpecificBranch", "SurveyReports")',
data: "BranchName="+encodeURIComponent(obj.series.label)+"&SurveyId=" + $("#SurveyId").val() + "&startDate=" + $("#ReportStartDate").val() + "&endDate=" + $("#ReportEndDate").val(),
cache: false,
success: function (r) {
if (r.success == false) {
noty({ text: r.resultText, type: 'error', timeout: 2000, modal: true });
} else {
$("#statboxSurveyCountTitle").html("<b>" + selectedBranchName + "</b> Şubesi Anket Sayısı");
$("#statboxSurveyAvgTitle").html("<b>" + selectedBranchName + "</b> Şubesi Anket Ortalaması");
$("#statboxSurveyRecommTitle").html("<b>" + selectedBranchName + "</b> Şubesi Tavsiye Oranı")
$("#StatboxesDiv").show();
$("#SurveyCountVal").text(r.FilledSurveyCount);
$("#SurveyAvgVal").text(r.FilledSurveyAverageRating.toFixed(2));
$("#SurveyRecommVal").text("%"+r.RecommendYesPercent);
}
},
error: function (error) {
noty({ text: "Bir hata oluştu lütfen tekrar deneyiniz!", type: 'error', timeout: 2000, modal: true });
}
});
$("#content").unblock();
}
这是一个解决这个问题的晚方案,但不知何故,我设法做了我想做的事。下面是我如何解决这个问题的: 我创建了一个函数,它获取要滚动的元素的id:
function goToByScroll(id){
@{int scroll = 600;
if(Model.BranchList.Count <= 1)
{
scroll = 750;
}
}
// Scroll
$('html,body').animate({scrollTop:@scroll}, 1000);
}
为此:
goToByScroll($("#scrollHere").attr("id"));
我们需要查看更多的代码才能准确地告诉您原因。谢谢,我更新了代码。如果您尝试$window.scrollTop0;,是否有效?第一次单击时是否填充了“obj”?第一次通过时这里的滚动偏移量是多少?@KevinLabécot不,它不起作用。
goToByScroll($("#scrollHere").attr("id"));