我有一个PHP脚本,随着脚本的进行显示其操作的日志.日志变得非常长,直到它将信息回显到页面底部,向页面添加滚动条.
如果我想查看日志的其余部分,我必须手动向下滚动.我可以让页面说... process.php#bottom但我不能<a name="bottom" />在每个日志项之后插入一个并期望浏览器继续跳到底部,是吗?
是否有javascript函数或其他简单方法,一旦不是这种情况,会自动将页面滚动到底部?
我不介意它是否会覆盖用户的滚动功能,因为无论如何,脚本将在3秒后重定向回主脚本.
我不一定需要一个完整的脚本,如果你只有指针,但那些提供完整工作脚本的人显然会得到他们的答案,而不仅仅是指点.
如果您不知道日志的含义,可以使用以下脚本来模拟我的脚本的作用:
<?php
for( $iLineNumber=0 ; $iLineNumber <100 ; $iLineNumber++ )
{
echo $iLineNumber , ' - This is a test. <br />';
sleep(1);
}
?>
Run Code Online (Sandbox Code Playgroud)
基本上,当脚本每秒加载和休眠时,当它到达页面底部时,它应该每秒自动向下滚动.
我有以下示例脚本
$aDomains = @{}
$aDomains['a-test.nl'] = @{}
$aDomains['b-test.nl'] = @{}
$aDomains['c-test.nl'] = @{}
$aDomains['d-test.nl'] = @{}
$aDomains['e-test.nl'] = @{}
$aDomains
Run Code Online (Sandbox Code Playgroud)
看起来很简单,但是如果我运行这个脚本,输出是非常出乎意料的:
$aDomains
Name Value
---- -----
e-test.nl {}
d-test.nl {}
b-test.nl {}
a-test.nl {}
c-test.nl {}
Run Code Online (Sandbox Code Playgroud)
如何让输出与添加项目的顺序相匹配?由于脚本中接下来会发生什么,我确实需要在所有实例上使用 @{}。
此外,在脚本中添加它根本没有效果:
$aDomains = $aDomains | Sort-Object
Run Code Online (Sandbox Code Playgroud) 我正在尝试创建一个简单的应用程序.它有2个列表框,但两个列表大致相同.所以在我的代码中,我希望能够轻松地在任一列表框上执行相同的代码.
在VB6中,我可以将两个控件命名为相同,为它们分配索引,并且这样可行.在VB.net 2008中,它似乎是不可能的.
我理想的是,在程序中创建一个变量,我可以分配给列表框中的任何一个,然后在其余的代码中使用这个新变量来控制附加到它的列表框.
这是一个例子:
Private Sub lVegetables_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles lVegetables.Click
ListToEditor(0, lVegetables.SelectedIndex)
End Sub
Private Sub lFruits_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles lFruits.Click
ListToEditor(1, lFruits.SelectedIndex)
End Sub
Private Sub ListToEditor(ByVal iList, ByVal iIndex)
Select Case iList
Case 0
Dim lList As lVegetables
Case 1
Dim lList as lFruits
End Select
tEditor.text = iList.item(iIndex)
End Sub
Run Code Online (Sandbox Code Playgroud)
有没有办法可以使用不同的变量来动态引用列表框,还是可以为它们分配索引以使它们具有相同的名称?