ASP.NET 2.0 имеет следующее свойство MaintainScrollPositionOnPostBack, и его можно использовать для поддержания позиции браузера в ответном сообщении. Может ли это быть достигнуто с помощью jQuery, и если да, то как? Я прочитал несколько статей с упоминанием, что MaintainScrollPositionOnPostBack не работает в некоторых браузерах, таких как Chrome/Safari и т.д.Есть ли способ реализовать функциональность MaintainScrollPositionOnPostBack в jQuery
3
A
ответ
3
Создать скрытый поле ввода ASP, чтобы сохранить позицию через постбэков, пройти ClientID этого поля в коде ниже:
// client id of the hidden input field
var hiddenInputId = '<%= _myHiddenInputField.ClientID %>';
// store the current scroll position into the input
function storeScrollPosition(){
$('#'+hiddenInputId)[0].value = scrollPosition();
}
// load the value out of the input and scroll the page
function loadScrollPosition(){
var curPosition = $('#'+hiddenInputId)[0].value;
if (curPosition > 0)
$(window).scroll(curPosition);
}
// determine the scroll position (cross browser code)
function scrollPosition() {
var n_result = window.pageYOffset ?
window.pageYOffset : 0;
var n_docel = document.documentElement ?
document.documentElement.scrollTop : 0;
var n_body = document.body ?
document.body.scrollTop : 0;
if (n_docel && (!n_result || (n_result > n_docel)))
n_result = n_docel;
return n_body && (!n_result || (n_result > n_body)) ? n_body : n_result;
}
// on load of the page, load the previous scroll position
$(document).ready(function(){loadScrollPosition();});
// on scroll of the page, update the input field
$(window).scroll(function(){storeScrollPosition();});
Это будет работать только для обратной передачи. Если вам нужно всегда иметь такое же положение экрана, мы можем играть с печеньем :)
Смежные вопросы
- 1. Есть ли лучший способ сделать это jQuery функциональность
- 2. Есть ли лучший способ реализовать?
- 3. Есть ли способ реализовать dispatch_cancel()?
- 4. Есть ли способ реализовать функцию в Oracle?
- 5. Есть ли способ реализовать слои в GDI +?
- 6. Есть ли способ реализовать поиск в Twitter?
- 7. Есть ли способ реализовать «n-month» масштабирование/уменьшение в Highcharts?
- 8. Есть ли способ реализовать SSO перед микросервисами?
- 9. MultiView & MaintainScrollPositionOnPostBack
- 10. indexOf(): есть ли лучший способ реализовать это?
- 11. Есть ли способ реализовать минимальную/максимальную очередь?
- 12. Есть ли более простой способ реализовать openid?
- 13. Есть ли способ реализовать всю среду разработки?
- 14. Android-Html: Есть ли способ реализовать спойлеры?
- 15. Есть ли способ реализовать функциональность, похожую на расширитель wpf, с помощью C++ и wxwidget
- 16. Есть ли способ реализовать masonry.js в magento с infinitescroll?
- 17. Есть ли способ реализовать метод абстрактного класса в java?
- 18. Есть ли способ реализовать «onShow» с использованием Prototype JS?
- 19. Как реализовать функциональность отмены?
- 20. Есть ли простой способ реализовать рейтинг звезд в iOS, как есть в android.
- 21. Есть ли способ скрыть кнопку, но сохранить ее функциональность
- 22. реализовать функциональность Живого поиска
- 23. реализовать addClass и removeClass функциональность в angular2
- 24. Как реализовать функциональность сохранения/загрузки?
- 25. Есть ли функциональность C-соединения в MATLAB?
- 26. Есть ли способ клонировать массив в jQuery?
- 27. Есть ли способ отключить функцию в jQuery?
- 28. есть ли способ уловить пробел в jQuery
- 29. Есть ли способ переключения вкладок в JQuery?
- 30. Есть ли способ шифрования в jQuery?
Я изменил эту строку: ** $ (window) .scroll (curPosition); ** использовать ** функцию scrollTop **, и это отлично поработало. Благодаря! –