繁体   English   中英

为什么将AutoScroll重定向到上一页

[英]Why is AutoScroll redirecting to previous page

我刚创建的函数有问题。 我正在尝试自动滚动到表上的特定用户。 当我选择我的按钮时,它会滚动到用户,然后重新加载上一页。

您将转到xxx.com,然后选择一个进入xxx.com/results_page.php的菜单。 在这里,您将选择另一个链接,该链接将您带到xxx.com/results.php。 在这里,您将选择“自动滚动”按钮。 该按钮会将您带到页面上的正确位置,然后重新加载到xxx.com/results_page.php。

我从朋友那里复制了此脚本,所以我不太确定它的工作方式。 这是我的按钮,由于它已损坏,我目前将其禁用。

<tr>
    <td colspan=2>
        <button onclick="findUser()" title="Sorry, I'm still working  on this." disabled>My Entry</button>
    </td>
</tr>

这是页面顶部的功能。

<script type="text/javascript">
function findUser(){
    $(window).scrollTop($("td:contains('<?php echo $_SESSION['loggedInUser']; ?>'):last").offset().top);
}
</script>

让我知道我还能提供什么帮助。 如果需要,我可以设置测试页。

测试页面Testing.daqspickem.com登录:访客通行证:访客

登录后,转到testing.daqspickem.com/results.php。 该按钮在该页面上。 结果页面 结果页面

此代码是我设置要查找的TD的地方。

    switch ($user_names_display)
    {
            case 1:
                    echo '      <td>' . trim($tmpUser->firstname . ' ' . $tmpUser->lastname) . '</td>' . "\n";
                    break;
            case 2:
                    echo '  <td><img src="images/logos/' . trim($tmpUser->template_name) . '.gif" style="opacity: .8; width: 40px; height: 40px; margin-left: 0px; z-index: -1;" />' . trim($tmpUser->userName) . '</td>' . "\n";
                    break;
            default: //3
                    echo ' <td><img src="images/logos/' . trim($tmpUser->template_name) . '.svg" style="width="15px" height="15px" /><abbrev title="' . trim($tmpUser->userName) . '&#10;' . trim($tmpUser->firstname . ' ' . $tmpUser->lastname) . '">' . substr($tmpUser->userName, 0, 17) . '</abbrev>
</td>' . "\n";
                    break;
    }

尝试这个:

function findUser(e){
    e.preventDefault();
    $(window).scrollTop($("td:contains('<?php echo $_SESSION['loggedInUser']; ?>'):last").offset().top);
}

之所以有效,是因为它阻止href执行其默认功能。

我猜问题出在这个脚本上,

<script type="text/javascript">
function findUser(){
    $(window).scrollTop($("td:contains('<?php echo $_SESSION['loggedInUser']; ?>'):last").offset().top);
}
</script>

在这里,您的$_SESSION['loggedInUser']包含"Guest"而您所指的td具有内部HTML "guest"

所做的更改将解决此问题,但是您需要设计一个后备解决方案,以处理表中没有用户的情况。

我在按钮周围添加了一个表单,它似乎已解决了该问题。 我将对任何其他想法持开放态度,因为这似乎并不理想。 Chrome似乎是刷新的问题。

      <form id="frmData" onsubmit="return false"> 
  <tr><td colspan = 2 > <button onclick="findUser()" title="Sorry, I'm still working  on this." >My Entry</button></td> </tr></table>
</form>

脚本

    <script type="text/javascript"> 
function findUser()
{
$(window).scrollTop($("td:contains('<?php echo $_SESSION['loggedInUser']; ?>'):last").offset().top);

}
</script>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM