点击jquery&amp ;;滚动到页面位置HTML

时间:2017-08-31 10:21:39

标签: php jquery html

我刚刚将我的网站更改为从html动态切换到我的很多页面的php。这样做我丢失了我在jquery中使用的滚动效果。该功能允许用户单击标题上的相应链接,它将滚动到链接到该按钮的类。在使页面动态化时,页面上的每个div现在具有相同的id。我想知道是否有办法将按钮设置为滚动到特定像素,或者可能使用第n个孩子?

function ScrollTo(id, speed)
{
$('html, body').animate({
        scrollTop: $(id).offset().top
    }, speed);

    return false;
}


<div class="header-case2">
        <a class="case2" onclick="ScrollTo('.case-div-1', 599)">Technology</a>
        <a class="case2" onclick="ScrollTo('.case-div-2', 599)">Local Authority     Modules</a>
        <a class="case2" onclick="ScrollTo('.case-div-3', 599)">Data Channel</a>
        <a class="case2" onclick="ScrollTo('.case-div-8', 599)">Housing     Solutions</a>
        <a class="case2" onclick="ScrollTo('.case-div-4', 599)"> Tenant     Engagement</a>
        <a class="case2" onclick="ScrollTo('.case-div-6', 599)">H&A Management</    a>
       </div>


$query = $handler->query('SELECT * FROM solutions');
$results = $query->fetchAll(PDO::FETCH_ASSOC);

for ($i=0; $i < count($results); $i++) {

  echo '<div class="case-div">';
  echo '<h2 class="upper-blue">'.$results[$i]['headline'].'<br>'.'</h2>';
  echo '<p class="pp13">'.$results[$i]['text'].'<br>'.'</p>';
  echo '</div>';
  echo '<div class="pa7"></div>';
}

1 个答案:

答案 0 :(得分:0)

你错过了div的增量 -

这可以通过添加$ i(for循环的索引)来轻松修复,这样你的divs类 -

echo '<div class="case-div-'.$i.'">';

或者

echo '<div class="case-div-'.$i+1.'">';

因为它从零开始 - 这将使你的onclicks再次工作。