我有各种链接,都有唯一的id是"伪锚".我希望它们影响url哈希值,并且点击魔法全部由一些mootools代码处理.但是,当我点击链接时,它们会自动滚动(或者在一个案例中滚动到顶部).我不想在任何地方滚动,但也需要我的javascript执行并在url更新中获得哈希值.
模拟的示例代码:
<a href="#button1" id="button1">button 1</a>
<a href="#button2" id="button2">button 2</a>
<a href="#" id="reset">Home</a>
Run Code Online (Sandbox Code Playgroud)
因此,如果您点击"按钮1"链接,则网址可以是http://example.com/foo.php#button1
有没有人对此有任何想法?简单地使用一些javascript返回void会导致滚动,但也会杀死我的javascript(虽然我可以使用onclick来解决这个问题)但更重要的是,可以防止url中的哈希值发生变化.
我在html页面上有一个锚点的链接.单击链接时,会导致页面滚动到锚点,以使锚点位于页面可见部分的最顶部.如何使页面滚动以使锚点位于页面中间?
我的Android应用程序中有一个WebView,它使用loadDataWithBaseURL()方法加载HTML字符串.问题是本地锚链接(<a href="#link">
...)无法正常工作.单击链接时,它将突出显示,但不会滚动到相应的锚点.
如果我使用WebView的loadUrl()方法加载包含锚链接的页面,这也不起作用.但是,如果我在浏览器中加载相同的URL,则锚链接可以正常工作.
是否需要特殊处理才能使这些工作适用于WebView?
我正在使用API v4(1.6).
代码并不多,这里是我一直在使用的一些测试代码的相关部分:
WebView detailBody = (WebView) findViewById(R.id.article_detail_body);
String s = "<a href=\"#link\">LINK!</a><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><a name=\"link\"></a>Testing!";
detailBody.loadDataWithBaseURL(API.HomeURL(this), s, "text/html", "utf-8", "");
Run Code Online (Sandbox Code Playgroud) 我确信答案会是'不',但我还是想问,不管怎么说,我错过了什么.
每个人都知道使用GET方法将数据传递给锚标记中的页面:
我想知道的是,如果有办法做同样的事情,但使用POST方法代替?
我这样做的目的是通过不在其中放置任何他们不需要看到的内容来保持用户看到的URL清洁.
这与安全性问题无关,因为我已经知道有很多方法可以获取传递的数据.
如果答案确实没有,那么当希望保持URL清洁时,人们使用什么方法来传递数据?饼干?别的什么?
以及当URL长度超过允许的GET请求长度时如何处理场景
我在使用displaytag实现排序/分页时遇到了这个问题,所有请求参数都附加在sort/pagination url中,这超出了GET请求的允许长度.
我正在使用以下代码来查找具有匹配的href URL的锚标记.目前,它将返回链接到请求的URL的锚点,例如./images
和任何指向该网址子文件夹的链接,例如./images/recent
.如果我只是要求,我希望它只返回第一个/images
.
$menuChildren = $menuChildren.has('a[href^="'+relativeUrl+'"],a[href^="/'+relativeUrl+'"],a[href^="'+url+'"]');
Run Code Online (Sandbox Code Playgroud) 在我的网站中,用户可以在其个人资料中添加网址.
此URL可以是http://www.google.com
或www.google.com
或google.com
.
如果我只是插入我的PHP代码<a href="$url">$url</a>
,链接并不总是绝对的.
如何强制a
标签绝对?
我不知道我想要完成的任务是否可行.我想覆盖A
给定HTML页面的所有锚对象(标记)的默认行为.我知道我可以循环遍历所有A
元素并onclick
从body元素onload
方法动态地添加对它们中的每一个的调用,但我正在寻找更绝对的解决方案.我需要的是为所有A
元素分配一个onclick
动作,该动作调用一个方法将元素href
属性作为参数传递,所以如下:
<a href="http://domain.tld/page.html">
Run Code Online (Sandbox Code Playgroud)
动态变为:
<a href="http://domain.tld/page.html" onclick="someMethodName('http://domain.tld/page.html'); return false;">
Run Code Online (Sandbox Code Playgroud)
就像我说的那样,理想的方法是在文档加载时以某种方式完全覆盖Anchor类.如果不可能,那么我将采用循环遍历所有A
元素的方法(我已经知道该怎么做).
我想知道它之间的区别是什么javascript:;
,javascript:void(0);
如果我在href
attribure中使用它们a
(链接)
<a href="javascript:;" onclick="DoSomething();">Link</a>
<a href="javascript:void(0);" onclick="DoSomething();">Link</a>
Run Code Online (Sandbox Code Playgroud)
我看到它们在所有浏览器上表现相同,但技术上有什么区别?
此致,Magdy
如何加载页面并使其在加载页面的某个位置打开?
例如,假设我有page1.html
,它有3个链接
<a href="page2.html#1">1</a>
<a href="page2.html#2">2</a>
<a href="page2.html#3">3</a>
Run Code Online (Sandbox Code Playgroud)
在page2.html
,我也有页面上的那些链接,即
<a href="page3.html#1">1</a>
<a href="page3.html#2">2</a>
<a href="page3.html#3">3</a>
Run Code Online (Sandbox Code Playgroud)
但是当我点击#2
或#3
链接的page1.html
,他们总是在页面的顶部开放,即使#2
和#3
在关闭屏幕page2.html
需要被向下滚动到待观察.
不确定我做错了什么.