跳转到锚标记而不在URL中显示主题标签

时间:2012-04-13 19:33:18

标签: jquery

当用户点击帖子标题时,我正在使用jQuery在特定主题标签(通过正文类中的onload函数)加载页面。标签显然出现在网址中。我想知道是否有办法隐藏主题标签使URL混乱。做了一些搜索并没有提出太多。

function goToAnchor() {
    location.href = "#post";
}

4 个答案:

答案 0 :(得分:22)

如下所示:http://djpate.com/2009/10/07/animated-scroll-to-anchorid-function-with-jquery/

function goToByScroll(id){
    $('html,body').animate({scrollTop: $("#"+id).offset().top},'slow');
}

只需传递要滚动的元素的ID即可。

答案 1 :(得分:6)

您可以将click事件绑定到此特定类型的锚点,并防止其上的默认值:

$('.anchorClass').on('click', function(e) {
  e.preventDefault();
  // rest of stuff
});

“其他东西”意味着找到某种将跳转页面的插件或代码示例。如果你想让它顺利滚动,那么有一个很受欢迎的scrollTo插件。甚至可能是scrollTo插件负责默认的预防。

[更新]

杰夫的建议(假设它有效)是“剩下的东西”,这两个答案中更有用。 ;-)但是防止违约仍然很重要。

答案 2 :(得分:0)

我认为你可以使用.htaccess文件。在那里你可以让一些网址链接到同一个地址。

例如,fff.com/ffffff.com以及fff.com#anchor可以在浏览器标签上显示为fff.com

答案 3 :(得分:0)

跳转/平滑滚动到锚定标记而不在URL中显示井号

TRY DEMO

# serializer.py
class MySerializer(serializers.Serializer):
    name = serializers.CharField()
    age = serializers.SerializerMethodField(required=False)

    def get_age(self, age):
        if self.context['age']:
            return self.context['age']
        return None


# usage
sample_data = {"name": "your name"}
serializer = MySerializer(data=sample_data, context={'age': 12})
serializer.is_valid(True)
print(serializer.data)
mQbChatDialog.join(history, new QBEntityCallback() {
           @Override
           public void onSuccess(Object o, Bundle bundle) {

               Log.e("Sucess"," == Success");
           }

           @Override
           public void onError(QBResponseException e) {
               Log.e("Sucess"," == Success");
           }
       });
function scrollSmoothTo(elementId) {
  var element = document.getElementById(elementId);
  element.scrollIntoView({
    block: 'start',
    behavior: 'smooth'
  });
}