用中键点击链接以让链接在新标签页打开我用的挺频繁的,但是感觉这种模式好像有点弊端,所以就想了一下在一个页面内实现在新标签页打开的功能。
我能想到的弊端:开发麻烦、用户理解困难。
我能想到的好处:减轻服务器负担、加快页面加载。这两个我都不太确定,我用我浅薄的知识思考了一下感觉应该能有这种效果。特别是如果页面很复杂,而新页面变化的内容很少。
我之前好像完全没见过这种东西,但是感觉应该是挺好想到的,没人做是不是有什么难以忽视的缺陷?我搜了一下也没搜到。
1
ershierdu 2023-08-05 10:16:29 +08:00
op 的意思是百度那样单击搜索结果后在新标签打开网页的效果?我不懂前端,不过这应该是很基础的功能吧,改个 HTML 标签的事?
至于在当前标签打开,好处之一是可以流畅地使用返回手势 |
2
swulling 2023-08-05 10:29:39 +08:00
这也不是一个技术问题,不就是加一个 `target="_blank"`么。
这是一个产品问题,关键是你的业务逻辑适不适合。 |
3
shendaowu OP @ershierdu #1
我担忧的果然来了,就是我没说明白。 刚才又在 GitHub 搜了一下“tab manager”。搜到个 demo: https://rawgit.com/caplin/FlexLayout/demos/demos/v0.7/demo/index.html 。大概就是这个感觉,如果你在这个页面的标签页里中键点击了一个链接,会在这个页面内新建一个标签页,而不是新建一个浏览器的标签页。 |
4
shendaowu OP @swulling #2 怪我没说明白。你说的这个我知道,你这个是在浏览器的新标签页打开,我想实现的是在页面内的标签页里打开。看我三楼的回复。
|
5
shendaowu OP @shendaowu #3 我又没说明白。三楼提到的那个 demo 没实现我在三楼说的那种点击链接在页面内得标签页里打开的效果,我说的是我想的效果。
|
6
wusheng0 2023-08-05 10:45:14 +08:00 via Android
自己模拟浏览器标签?
>减轻服务器负担、加快页面加载。 应该效果一般,静态文件有缓存的,动态数据还是免不了。 后台管理其实有那种导航和这个类似。 不这么做还是成本问题,业务需求上没必要,普通标签对用户和开发都友好。 |
7
shelken 2023-08-05 10:46:48 +08:00
就是在一个页面打开的页面就在这个页面,但是还是分标签的。这种也挺常见吧?唯一区别就是保留不保留上个菜单项的页面,还是从需求出发
|
8
ershierdu 2023-08-05 10:47:30 +08:00
@shendaowu 这个网页加载不出来,不过听着有点像 iPhone Safari 长按(准确来说是按压,不过现在没有 3D touch 了,所以这个交互变成长按)链接后 pop 出来的预览图,再点击一下可以直接进入。我觉得类似的功能需要浏览器的支持才能获得比较好的体验,例如 iPhone 这个,把预览图打开成普通标签页是不需要重新加载的,没有浏览器支持的话应该不好做?
|
9
ershierdu 2023-08-05 10:50:03 +08:00
@ershierdu 网页打开了,看来我又理解错了……如果只是单纯地模拟标签,我觉得不仅给自己的开发和维护增加了难度,还一定程度上破坏了跟规范的兼容性
|
10
shantongxu 2023-08-05 10:53:58 +08:00 1
op 指的是类似后台管理系统那样多 tab 页吧
从技术上来看, 在以前的 iframe 年代没有难度, 但是现在普遍用的 react ,vue 等,vue 的话有 keep-alive 标签还好实现一点,react 因为没有官方的 keep-alive 所以实现起来就比较困难, 但是也不是不能实现 所以综合来说,2 楼说的对 这不是一个技术问题, 这是一个产品问题 |
11
IvanLi127 2023-08-05 12:51:56 +08:00 via Android
这个很常见吧,至少上古的管理系统好像都喜欢这么干,不知道和 ie 当时不支持多标签有没有关系。。。这功能现在看来没啥用啊,把浏览器能做的事情再做一遍,还要维护,怎么想都不划算呐。
|
12
Colemei 2023-08-05 12:57:12 +08:00
提供一种新逻辑,参考 Arc 浏览器给出的解决方案,click 之后出现的是一个独立于当前浏览器窗口之外的临时小窗
Little Arc is a smaller, simpler Arc window. It's perfect for quick lookups and reading funny tweets your friends send you. |
13
DOLLOR 2023-08-05 13:30:21 +08:00 via Android 3
这种“模拟 tab”的交互,我是能不做就不做的。
因为会增加很多开发负担,也不会给用户体验有多少提升。 比如被切换到后台的 tab 内容要保留还是销毁,如何处理重复标签,如何同步各标签页的状态等等 |
14
darkengine 2023-08-05 20:55:22 +08:00
如果浏览器一级已经打开多个标签, 标签加载的页面里还有一堆子标签, 要找某个子标签的时候就非常麻烦, 要挨个标签切进去看.
|
15
zycxtbl4324 2023-08-18 15:41:40 +08:00
这种产品一般只在 toB 的项目上出现,你肯定见不到,toB 产品有很多需求必须这样实现,多页面缓存,因为有的流程需要多页面操作
|