标签: fragment-identifier

使用JavaScript解析URL哈希/片段标识符

寻找一种方法,使用JavaScript/JQuery将URL的哈希/片段中的密钥对解析为对象/关联数组

javascript url hash jquery fragment-identifier

44
推荐指数
4
解决办法
6万
查看次数

使用JavaScript删除URL中的片段w/out导致页面重新加载

背景:我有一个HTML页面,可以让您扩展某些内容.由于只需要加载页面的一小部分进行此类扩展,因此通过JavaScript完成,而不是通过指向新的URL/HTML页面.然而,作为奖励,用户能够永久链接到这样的扩展部分,即向其他人发送诸如的URL

http://example.com/#foobar

并为其他用户立即打开"foobar"类别.这使用parent.location.hash ='foobar',因此该部分很好.

现在的问题是:当用户在页面上关闭此类别时,我想再次清空URL片段,即将http://example.com/#foobar转到http://example.com/以更新永久链接显示.但是,这样做parent.location.hash = ''会导致重新加载整个页面(例如在Firefox 3中),我想避免这种情况.使用window.location.href = '/#'不会触发页面重新加载,但会在URL中留下一些看起来不太好看的"#"符号.那么在流行的浏览器中有没有一种方法可以删除包含"#"符号的URL锚点,而不会触发页面刷新?

html javascript url fragment-identifier

43
推荐指数
3
解决办法
5万
查看次数

window.location.hash的编码

是否window.location.hash包含url部分的编码或解码表示?

当我打开相同的URL(http://localhost/something/#%C3%BC其中,%C3%BC转化为ü在Firefox 3.5和Internet Explorer 8),我得到不同的值document.location.hash:

  • IE8: #%C3%BC
  • FF3.5:

有没有办法在两个浏览器中获得一个变体?

html javascript url encoding fragment-identifier

41
推荐指数
3
解决办法
2万
查看次数

为什么Twitter在URL中使用哈希和感叹号,以及它们如何重写搜索URL?

我们理解哈希用于AJAX搜索,但是感叹号?谁知道?

此外,其搜索表单的"action"属性指向"/ search",但是当您进行搜索时,URL中会出现哈希感叹号.他们只是从"/ search"重定向到"/#!/ search"吗?

注意: q的第二部分仍然没有答案:也就是说,他们是将用户从"/ search"重定向到"/#!/ search",还是将用户发送到"/ search"并在页面上使用JS重写网址? - Crashalot 1月26日23:51

谢谢!

twitter ajax fragment-identifier

33
推荐指数
3
解决办法
1万
查看次数

如何在URL中显示Ajax请求?

我想要的是拥有更改页面一部分的链接,以及它的动态URL,我可以在其中指定变量等 #calendar=10_2010tabview=tab2

Check this for an exact example: 点击这里进行精确的演示

所以这是我需要的链接格式:

#calendar=10_2010&tabview=tab2

我必须像链接变量calendartabview这样我就可以改变一个页面上的多个万物而不realoading.


或者像http://www.wbhomes.com.au这样的其他格式,这正是我想要的,但是第一种格式也很好,但这更美观.

  • http://wbhomes.com.au/#/propertiesforsale/houseandland/quinnsbeach-waterland1

要求

  • 需要从例如邮件的任何地方访问,或者如果我只是在URL栏中写入.

  • 链接应该在历史记录中,因此如果我按下后退或前进按钮,则需要访问该页面.

  • 页面刷新也需要工作.


一些资源:

例子:

一些教程:


请帮我!我从来没有找到任何解决方案来做到这一点,但我不想使用jquery或任何API,或任何库,我想有一个工作Javascript/AJAXPHP脚本.

php ajax url-rewriting fragment-identifier hashchange

31
推荐指数
1
解决办法
1万
查看次数

保持JavaScript中哈希/锚点更改的历史记录

我目前正在实现一个JavaScript库,用于跟踪地址栏中哈希部分的更改历史记录.这个想法是你可以在哈希部分保持一个状态,然后使用后退按钮返回到先前的状态.

在大多数最近的浏览器中,这是自动的,您只需轮询location.hash属性以进行更改(在IE8中,您甚至不必这样做;您只需将一个函数附加到onhashchange事件中.)

我想知道的是,有哪些不同的方法可以追踪历史?我已经实现了经过测试可以在Internet Explorer 6/7/8,Firefox和Chrome中运行的功能,但其他浏览器呢?以下是我目前保留历史的方式:

编辑:请参阅下面的答案,而不是浏览各种浏览器.

javascript fragment-identifier

28
推荐指数
1
解决办法
2万
查看次数

哪一个更好的pushstate或location.hash?

window.location.hashvs HTML5 history.pushState.使用ajax请求满足url哪个更好,为什么?谢谢.

html url fragment-identifier pushstate

27
推荐指数
6
解决办法
3万
查看次数

为什么"#.id"在CSS/jQuery中是一个糟糕的选择器但它在HTML锚点中有效?

我正在使用JSDoc.它生成具有句点的ID,如

<a id=".someMethodName"></a>
Run Code Online (Sandbox Code Playgroud)

如果页面的另一部分有

<a href="#.someMethodName"></a> 
Run Code Online (Sandbox Code Playgroud)

这非常有效.单击第二个锚点滚动到第一个.

但是,document.querySelectorjQuery都不会找到锚点.

为什么浏览器本身接受此锚点但jQuery和querySelector不接受?

test("document.querySelector('#.someMethodName')", function() {
  document.querySelector('#.someMethodName');
});
test("$('#.someMethodName')", function() {
  $('#.someMethodName');
});

function test(msg, fn) {
  try {
    var result = fn();
    log(msg, result);
  } catch(e) {
    log(msg, e);
  }
}

function log() {
  var pre = document.createElement("pre");
  pre.appendChild(document.createTextNode(Array.prototype.join.call(arguments, " ")));
  document.body.appendChild(pre);
}
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a href="#.someMethodName">click here to go to anchor and see errors</a>
<pre>
put
some
text
here
so
the
page
is
long
enough
that
when
we
click
the …
Run Code Online (Sandbox Code Playgroud)

html jquery css-selectors jquery-selectors fragment-identifier

26
推荐指数
2
解决办法
2019
查看次数

加载新页面后平滑滚动到锚点

我想导航到新页面上的锚点,但我希望页面在顶部加载,然后立即平滑滚动到相关的锚点.可以这样做吗?

我是一个完整的Javascript新手.

这是我目前用于在当前页面内平滑滚动的js.我只是在链接上应用了一类"滚动".

非常感谢!

<script>
$(function(){
  $('.scroll').on('click',function(e) {
    e.preventDefault();
    $('html, body').animate({ scrollTop: $($(this).attr('href')).offset().top + 'px' }, 1000, 'swing');
  });
});
</script>
Run Code Online (Sandbox Code Playgroud)

jquery scroll fragment-identifier

25
推荐指数
1
解决办法
4万
查看次数

如何从Django Request对象访问url hash/fragment

如标题所示:如何#从Django视图访问url hash/fragment(破折号后面的部分),因此,我想,来自Django Request对象?

我没有找到有关此处可用文档的足够信息:http://docs.djangoproject.com/en/dev/ref/request-response/

PS假设片段部分被发送到服务器(在我的特定情况下是这样,因为它不是发送请求的浏览器).

python django hash django-urls fragment-identifier

24
推荐指数
1
解决办法
1万
查看次数