Как после вызова перезагрузки открутить скрол в нужном месте
Всем добрый день. Проблема такая: добавляю данные в БД, но они появляются только после перезагрузки....
Что мне нужно изменить, чтоб после клика на модальное окно, страница перезагружалась и откатывалась к нужному id или класу (добавленному контенту)... заранее благодарен за внимание...
/* вывод модального окна */
$('#modal_green, #modal_red').click(function(){
var x = document.getElementById('modal_red');
x.style.visibility = 'hidden';
x.style.opacity = '0';
var y = document.getElementById('modal_green');
y.style.visibility = 'hidden';
y.style.opacity = '0';
});
$(".submit_otzivi").click(function(){
var error=false;
$(".mail_name, .mail_text").each(function(){
if($(this).val()==""){ error=true; }
})
if(error===true){
var x = document.getElementById('modal_red');
x.style.visibility = 'visible';
x.style.opacity = '1';
x.style.transition = 'all 0.7s ease-out 0s';
/*alert("Заполните все обязательные поля");*/
} else {
var y = document.getElementById('modal_green');
y.style.visibility = 'visible';
y.style.opacity = '1';
y.style.transition = 'all 0.7s ease-out 0s';
/*отправка формы*/
$(".form2").submit(function() {
$.ajax({
type: "POST",
url: "send_otzivi.php",
data: $(this).serialize()
}).done(function() {
$(this).find("input").val("");
$(".form2").trigger("reset");
});
return false;
});
}
});
|
После перезагрузки страница должна найти элемент, к которому надо роллинговать
И выполнить scrollIntoView к нему https://developer.mozilla.org/en-US/...scrollIntoView |
Я уже делал так, но после перезагрузки скрол не происходит...
делал так:
$(".form2").submit(function() {
$.ajax({
type: "POST",
url: "send_otzivi.php",
data: $(this).serialize()
}).done(function() {
$(this).find("input").val("");
$(".form2").trigger("reset");
/* после добавления в БД, делаю перезагрузку */
document.location.href="http://test.ensy.com.ua";
/* скрол к элементу... но он не происходит */
const element = document.getElementById("element");
element.scrollIntoView({block: "center", inline: "center"});
});
return false;
});
|
Так же пытался перезагрузку и скрол, привязать к клику по мадально му окну, но все равно не получается... Проиходит перезагрузка, а скрол пытается откатить, но сразу возвращается наверх...
|
Zhenyaxxxx,
в done поставить метку в localStorage, в DOMContentLoaded проверить наличие метки и переместится к блоку и стереть метку. |
Zhenyaxxxx,
$(function() {
if (localStorage.getItem('view')) {
localStorage.removeItem('view');
const element = document.getElementById("element");
element.scrollIntoView({
block: "center",
inline: "center"
});
};
$(".form2").submit(function(event) {
event.preventDefault();
$.ajax({
type: "POST",
url: "send_otzivi.php",
data: $(this).serialize()
}).done(function() {
localStorage.setItem('view', "yes");
document.location.href = "http://test.ensy.com.ua";
});
});
});
|
Я не высокий специалист в js, поэтому не могу понять куда мне что добавить и стереть... Я так понял в функцию done(function() мне нужно добавить метку, но как это сделать не понимаю как это сделать и что изменить....
Если не тяжело, можете мне какой то пример кода, или разжевать.... Ничего не понял... |
Цитата:
|
я одновременно с вами написал ответ... спасибо за внимание, сейчас буду пробовать...
|
Супер, все работает, спасибо!!!
|
| Часовой пояс GMT +3, время: 15:12. |