Sharepoint 向自定义web部件添加状态指示器
我有一个自定义web部件,它正在生成一些用户数据。我已经添加了适当的代码来输出标准的状态图标和菜单,但是这相当稳定 我的web部件的呈现html如下所示:Sharepoint 向自定义web部件添加状态指示器,sharepoint,sharepoint-2007,web-parts,Sharepoint,Sharepoint 2007,Web Parts,我有一个自定义web部件,它正在生成一些用户数据。我已经添加了适当的代码来输出标准的状态图标和菜单,但是这相当稳定 我的web部件的呈现html如下所示: <span> <a href="http://mysite/Person.aspx?accountname=USERID">USERNAME</a> <img border="0" height="12" width="12" src="/_layouts/i
<span>
<a href="http://mysite/Person.aspx?accountname=USERID">USERNAME</a>
<img border="0" height="12" width="12" src="/_layouts/images/blank.gif" onload="IMNRC('USEREMAIL')" id="imnUSERID" ShowOfflinePawn="1" />
</span>
显然要替换用户ID、用户名、用户电子邮件等
问题有两方面
1在IE7中,无法检索状态信息。菜单显示正确,但图标不显示,当您将鼠标悬停在间隙上方时,下拉菜单不提供IM设置
2在IE8 RC1中,状态信息正确返回并显示图标,但下拉列表显示在图标上方几英寸处
任何关于这些问题的帮助,或关于向自定义web部件添加状态的其他提示,都将得到极大的欢迎
最新进展
-将网页添加到IE7的“受信任站点”中-没有任何作用
-IE8的兼容性视图没有区别。
-更改为id=CSRP\U id,类型=sip
根据建议将代码更改为以下内容:
上述更新均未成功。首先,您必须消除样式问题还是javascript问题 如果所有的状态气泡都显示正确,那么请获取并尝试跟踪css。甚至改变网站的主题,看看你是否得到了不同的结果 这是我们的html,很好用
<span>
<img width="12" src="/_layouts/images/blank.gif" onload="IMNRC('[USERMAIL]')" id="IMID[GUID]" ShowOfflinePawn=1 alt="Presence bubble">[USERNAME]</span>
注:
[用户邮件]=显而易见
[用户名]=显而易见
[GUID]=随机GUID
还要注意格式不正确的img标记,没有结束/>只是>。我们使用它,因为这是SharePoint生成的html。请不要让我开始使用它。我不知道,但img ID标记是常量,还是动态创建的。对常量ID有问题,但无法判断它是否是相同的东西。No,ID是固定的,尽管我也尝试了基于用户ID的动态ID,但也无法正常工作。我注意到,使用固定ID时,页面上只有第一个项目会更新人员详细信息。谢谢Nat,我注意到您再次使用了一种稍微不同的技术。那么,您是否建议我调整html以使用旧的HTML4样式未关闭的img标记?很难知道。我不是css vs浏览器方面的专家,试一试,看看效果如何。仅供参考,当我将鼠标悬停在web部件中的任何元素上时,我在显示指示器时遇到了问题。如上图所示,将IMG包含在一个范围内,修复了我的问题。没有洞察到原帖子的问题;HTML看起来和我的一样,在IE7/8中呈现良好。
<span>
<img width="12" src="/_layouts/images/blank.gif" onload="IMNRC('[USERMAIL]')" id="IMID[GUID]" ShowOfflinePawn=1 alt="Presence bubble">[USERNAME]</span>