Javascript 在弹出新窗口后向上滚动。-滑动分页
所以现在点击按钮,我会弹出一个新窗口,进入某个网站。但我不仅需要打开这个新网站,还需要在弹出的屏幕上向下滚动一点。以下是我目前正在做的事情:Javascript 在弹出新窗口后向上滚动。-滑动分页,javascript,jquery,html,Javascript,Jquery,Html,所以现在点击按钮,我会弹出一个新窗口,进入某个网站。但我不仅需要打开这个新网站,还需要在弹出的屏幕上向下滚动一点。以下是我目前正在做的事情: $(document).ready(function () { $('.popup').click(function(event) { event.preventDefault(); window.open("https://www.spmet.aspx", "popupWindow", "width=1400,height=600,s
$(document).ready(function () {
$('.popup').click(function(event) {
event.preventDefault();
window.open("https://www.spmet.aspx", "popupWindow", "width=1400,height=600,scrollbars=yes");
setTimeout(function() { scrollTo(0,150) }, 1000);
});
});
此操作当前已成功打开窗口,但如何修改将滚动到站点中特定位置的更改。因为您打开了一个新窗口,js将再次加载,而click事件未执行。您可以使用以下内容:
$(document).ready(function () {
if (window.location.href.indexOf("my_url") > -1) {
$('html,body').animate({ scrollTop: "0px" }); // or 150px
}
});
或者对setTimeout使用一些全局变量,并在执行后将其中断。因为您打开了一个新窗口,js将再次加载,而click事件未执行。您可以使用以下内容:
$(document).ready(function () {
if (window.location.href.indexOf("my_url") > -1) {
$('html,body').animate({ scrollTop: "0px" }); // or 150px
}
});
或者为setTimeout使用一些全局变量,并在执行后将其中断。您的代码在父窗口中运行,而不是在弹出窗口中运行。如果无法在弹出目标中输入int,请尝试通过引用滚动,在url顶部添加“#btnLogin_div”,如下所示:
$(document).ready(function () {
$('.popup').click(function(event) {
event.preventDefault();
window.open
("https://www.spmet.aspx",
"popupWindow", "width=1400,height=600,scrollbars=yes");
setTimeout(function() { scrollTo(0,150) }, 1000);
});
});
您的代码在父窗口中运行,而不是在弹出窗口中运行。如果无法在弹出目标中输入int,请尝试通过引用滚动,在url顶部添加“#btnLogin_div”,如下所示:
$(document).ready(function () {
$('.popup').click(function(event) {
event.preventDefault();
window.open
("https://www.spmet.aspx",
"popupWindow", "width=1400,height=600,scrollbars=yes");
setTimeout(function() { scrollTo(0,150) }, 1000);
});
});
因为你正在打开一扇新的窗户;旧页面上的js未被使用;您必须在正在加载的新页面上添加滚动js。这是一个很好的理由,否则我可以让你进入一个页面,然后幻影般地点击这些东西,这将是不好的
您可以通过在iframe中打开页面来绕过它;您可以在其中滚动iframe窗口 因为您正在打开一个新窗口;旧页面上的js未被使用;您必须在正在加载的新页面上添加滚动js。这是一个很好的理由,否则我可以让你进入一个页面,然后幻影般地点击这些东西,这将是不好的 您可以通过在iframe中打开页面来绕过它;您可以在其中滚动iframe窗口