3

在我拥有的一些网站中,当使用 IE 按钮添加到收藏夹时,由页面标题自动填充的收藏夹的名称有时无法获取名称并插入它获取“/”替换为“ -" 和 ":" 被删除

问题是什么?网站是希伯来语或英语,编码是 utf-8 或 windows-1255...

4

1 回答 1

2

IE 收藏夹只是文件,特别是 .url 文件。在 Windows 上,文件名中包含某些字符是非法的。这包括/:字符。IE 将它们替换为 a-而不是打扰用户。

非法字符的完整列表是:\ / : * ? " < > |

只有拥有 IE 源代码或更具体知识的人才能告诉您它不适合您的确切原因。但是,在您的示例页面上,您有一个非常长的标题:它有 396 个字符长。Windows 上的 MAX_PATH 为260 个字符。我的猜测是 IE 陷入了某种错误状态,因为您的标题比任何人合理预期的标题都要长(毕竟,选项卡 UI 只能显示大约 50 个字符)。由于您的标题太长,它使用的是 URL。尝试缩短您的标题,看看是否能解决问题。

更新:我刚刚进行了一个小实验,似乎 IE 将您限制为 128 个字符(这意味着有人选择了 2 的任意幂,现在您被困住了)。任何超过 128 的内容和 IE 都使用 URL 而不是标题。

您也可以尝试在 IE 中使用window.external.AddFavorite() ;我不知道可以让您指定多长时间的标题,但我怀疑您将始终被限制为 MAX_PATH。

于 2010-04-26T20:54:31.433 回答