【发布时间】:2011-04-04 14:27:47
【问题描述】:
当我在页面上添加多个联系人 Web 部件时,Sharepoint 2007 中的状态指示器出现问题。
我注意到添加多个联系人时总是出现灰色气泡,因此我在互联网上搜索了解决方案。有人发现 img 标签的 ID(存在指示器气泡)不应该是唯一的。因为 SharePoint 会自动将静态 ID 添加到我需要覆盖 ID 的 img 标签。所以我写了这段 javascript 代码(实际上是复制了 guid 函数 ;-)):
function S4()
{
return (((1+Math.random())*0x10000)|0).toString(16).substring(1);
}
function guid() {
return (S4()+S4()+"-"+S4()+"-"+S4()+"-"+S4()+"-"+S4()+S4()+S4());
}
window.IMNRC = function(native) {
return function(name, elem) {
if(elem != null)
{
if(elem.id="contact_im,type=sip")
{
elem.id = guid();
}
}
native(name, elem);
}
}(window.IMNRC);
我不知道它是否是好的代码,但是当我将它添加到页面时,气泡显示联系人的存在良好。 我现在唯一的问题是菜单不起作用。当我将鼠标悬停在状态指示器上时,它会变成灰色,并且菜单中的所有链接都不起作用。
我的一位同事注意到,当他将鼠标悬停在状态指示器上时,会出现一个带有联系人姓名的工具提示。奇怪的是名字与联系人不匹配。当他刷新时,他注意到工具提示中的名称随机更改。所以我认为这与我玩img标签的ID有关。
所以现在我有两个选择: - 或者我需要重新开始,不要弄乱img标签上的ID,并为存在指示器问题找到另一种解决方案 - 或者我需要修复菜单问题。
有人可以帮我解决这两个选项中的任何一个吗?
谢谢!
【问题讨论】:
标签: sharepoint sharepoint-2007