// 创建一个带有一个框架的新页面,并将该框架的源设置为当前页面的 URL var fr4me = '<frameset cols='*'>\n<frame src='' + current + '' />'; fr4me += '</frameset>';如何在此段代码中设置滚动条的位置?
时间: 2024-03-11 20:48:46 浏览: 61
在`<frameset>`标签中的`cols`属性或`rows`属性中,您可以使用逗号分隔符来指定每个框架的大小,例如`cols='30%, 70%'`表示将框架分为两个,第一个框架占总宽度的30%,第二个框架占70%。您还可以在这些值后面添加`scrolling`属性来指定滚动条的位置。例如,如果您想要在第一个框架中添加垂直滚动条,可以这样写:
```
var fr4me = '<frameset cols=\'30%, 70%\'>\n<frame src=\'' + current + '\' scrolling=\'auto\'/>';
fr4me += '<frame src=\'other.html\' />\n';
fr4me += '</frameset>';
```
这里`cols`属性被设置为`'30%, 70%'`,表示将框架分成两个,第一个框架占总宽度的30%,第二个框架占70%。第一个框架中的`<frame>`标签设置了`scrolling`属性为`auto`,表示自动添加垂直滚动条。如果您想要在水平方向上添加滚动条,可以将`cols`属性改为`rows`,然后将`scrolling`属性添加到`<frame>`标签中。
相关问题
// 创建一个带有一个框架的新页面,并将该框架的源设置为当前页面的 URL var fr4me = '<frameset cols=\'*\'>\n<frame src=\'' + current + '\' />'; fr4me += '</frameset>';如何在此段代码中设置滚动条?
您可以在`<frameset>`标签中的`cols`属性中添加`scrolling`属性来设置滚动条。例如,如果您想要在垂直方向上添加滚动条,可以这样写:
```
var fr4me = '<frameset cols=\'*\'>\n<frame src=\'' + current + '\' scrolling=\'auto\'/>';
fr4me += '</frameset>';
```
这里`scrolling`属性设置为`auto`,表示根据需要自动添加滚动条。您还可以将其设置为`yes`或`no`,分别表示始终显示滚动条或不显示滚动条。如果您想要在水平方向上添加滚动条,可以将`cols`属性改为`rows`,然后将`scrolling`属性添加到`<frame>`标签中。
// 弹出提示框,让用户输入刷新时间间隔(单位为秒) var timeout = prompt("设置刷新时间间隔[S]"); // 获取当前页面的 URL var current = location.href; if(timeout > 0) { // 如果用户输入的时间间隔大于 0,则设置一个定时器,每隔指定的时间间隔就执行 reload() 函数 setTimeout('reload()', 1000 * timeout); } else { // 如果用户输入的时间间隔等于 0 或小于 0,则直接刷新当前页面 location.replace(current); } function reload() { // 每隔指定的时间间隔就执行 reload() 函数 setTimeout('reload()', 1000 * timeout); // 创建一个带有一个框架的新页面,并将该框架的源设置为当前页面的 URL var fr4me = '<frameset cols=\'*\'>\n<frame src=\'' + current + '\' />'; fr4me += '</frameset>'; // 将新页面写入到当前页面中,并关闭当前页面 with(document) { write(fr4me); void(close()); }; }在此代码的fr4me中设置滚动条的位置,保持之前页面浏览的滚动位置。
要保持之前页面浏览的滚动位置,您需要在新页面加载后,将滚动条位置设置为与之前页面相同的位置。为此,您可以使用JavaScript的`scrollX`和`scrollY`属性来获取之前页面的水平和垂直滚动位置,并将其设置为新页面的滚动位置。同时,您可以在`<frameset>`标签中添加`onload`事件,以在新页面加载后执行该代码。例如:
```
function reload() {
// 每隔指定的时间间隔就执行 reload() 函数
setTimeout('reload()', 1000 * timeout);
// 获取之前页面的滚动位置
var scrollX = window.scrollX || document.documentElement.scrollLeft;
var scrollY = window.scrollY || document.documentElement.scrollTop;
// 创建一个带有一个框架的新页面,并将该框架的源设置为当前页面的 URL
var fr4me = '<frameset cols=\'*\'>\n<frame src=\'' + current + '\' onload=\'setScroll(' + scrollX + ',' + scrollY + ')\'/>';
fr4me += '</frameset>';
// 将新页面写入到当前页面中,并关闭当前页面
with(document) {
write(fr4me);
void(close());
};
}
function setScroll(scrollX, scrollY) {
// 设置新页面的滚动位置为之前页面的滚动位置
window.scrollTo(scrollX, scrollY);
}
```
在`<frame>`标签中添加`onload`事件,以在新页面加载后执行`setScroll()`函数,并将之前页面的滚动位置作为参数传递给该函数。然后,`setScroll()`函数将新页面的滚动位置设置为之前页面的滚动位置。
阅读全文