:访问链接而不离开页面
:Visited Links Without Leaving page
我目前正在构建一个 SharePoint 页面。 页面对链接使用锚标记,这些链接不是离开页面,而是触发模式对话框。 这些链接的功能就好像它们是普通链接一样。注意:div 内容是通过 rest 拉入的,这意味着它们是通过 javascript 函数填充的,因此手动编辑 CSS 不会持久。
我正在使用锚标签,因为我想访问 :visited 标签,以便用户知道他们以前查看过哪些链接。 这里的问题是我一直在使用 href='#' 的占位符标签。 这并没有给我预期的结果,因为当每个链接都有 href='#' 时,访问一个链接会改变页面上所有链接的颜色。
我试图包含通过我的对话框函数打开的链接,以便每个链接都有一个唯一的 URL,但为了避免离开页面,我的函数返回 false,这反过来不会触发 :visited 事件。
有没有办法让我拥有唯一的 URL 来区分非静态 Div 条目和 :visited子类,而无需让锚点离开当前页面?
<a class="hyper" href="myLinkHere" onclick="return myDialog(//start dialog then return false);">This is a Title</a>
如果你的目的是在一个会话中保留链接状态,那么只需在javascript中管理它。在返回 false 之前,请更改 CSS 类或执行您计划更改链接外观的任何其他操作。
如果您打算跨会话保留链接状态,那么请在客户端使用 javascript 的组合,并在服务器端使用任何内容来维护给定用户的状态。
我知道从某种意义上说,如果可以的话,保留所有客户端会更容易,但让我们面对现实吧 - 用户在单击链接时实际上并没有访问任何东西,因此尝试表现得好像他们一样不一定是最合乎逻辑的选择。
@James 沃丁顿: 你的回答很棒!您通过一个小调整解决了这个问题。现在我也可以使用模态框或颜色框的访问链接。
您可以使用 href 中的 #something 来指定要链接到的内部页面 ID。如果您指定的 ID 不在页面上,您将拥有一个唯一 ID,该 ID 将链接标记为已访问,而不会实际将您带到任何地方。例如
<a href="#test">Test</a>
<a href="#test2">Test</a>
<a href="#test3">Test</a>
<a href="#test4">Test</a>
您可以使用 href 中的 #something 来指定要链接到的内部页面 ID。如果您指定的 ID 不在页面上,您将拥有一个唯一 ID,该 ID 将链接标记为已访问,而不会实际将您带到任何地方。例如
<a href="#test">Test</a>
<a href="#test2">Test</a>
<a href="#test3">Test</a>
<a href="#test4">Test</a>
快速提琴。
- Chrome离线不会使用cache.manifest
- 鼠标输入和鼠标离开不起作用
- 在 Meteor.loginWithPassword 之后,旧用户不会离线(meteor-user-status 包)
- 使jQuery scrollTop不离开浏览器历史记录
- 如何在ASP.NET C#中触发TextChange事件而不离开焦点
- Reactjs在不使用插件的情况下为离开组件设置动画
- 当光标离开屏幕时,游戏不会't以Javascript结尾
- 锚点在离开时使用fullPage不起作用
- 如何让窗口消息保持不变,直到用户单击按钮才离开页面
- 在不离开页面和bootstrapValidator的情况下发送联系表格
- 若文本框中包含文本,则不允许用户离开页面
- 角度.js模板在离开并返回路由之前不会渲染
- :访问链接而不离开页面
- 悬停(鼠标离开)方法不显示效果
- IOS Cordova/Phonegap 离线视频源标签不起作用
- 子节点不会离开父节点
- 我不希望我的“播放器”离开屏幕,我该如何防止这种情况
- 鼠标离开不会再次打开
- 为什么我的“基于纯 JAVASCRIPT”离线文件不支持“加载”事件
- PHP表单提交按钮,但不离开页面