Javascript 更改MSN聊天状态图标
我正在使用此技巧将MSN Messenger集成到我的网站:Javascript 更改MSN聊天状态图标,javascript,html,css,msn,msn-messenger,Javascript,Html,Css,Msn,Msn Messenger,我正在使用此技巧将MSN Messenger集成到我的网站: 它会显示一个带有当前MSN状态的图标,如在线、离开等。我想更改这些图像。有可能吗?第一次回答这个问题时,我大做文章: 到这里: 将重定向到: 这使得检测状态更加容易 我错过了 我看这里: 我选择了状态图标选项,并得到如下代码: <a target="_blank" href="http://settings.messenger.live.com/Conversation/IMMe.aspx?invitee=XXXXXXXXXXX
它会显示一个带有当前MSN状态的图标,如在线、离开等。我想更改这些图像。有可能吗?第一次回答这个问题时,我大做文章: 到这里: 将重定向到: 这使得检测状态更加容易 我错过了 我看这里: 我选择了状态图标选项,并得到如下代码:
<a target="_blank" href="http://settings.messenger.live.com/Conversation/IMMe.aspx?invitee=XXXXXXXXXXX@apps.messenger.live.com&mkt=en-GB">
<img style="border-style: none;"
src="http://messenger.services.live.com/users/XXXXXXXXXXX@apps.messenger.live.com/presenceimage?mkt=en-GB"
width="16" height="16" />
</a>
<a target="_blank" href="http://settings.messenger.live.com/Conversation/IMMe.aspx?invitee=XXXXXXXXXXX@apps.messenger.live.com&mkt=en-GB">
<img style="border-style: none;"
src="proxyMyMsnImage.php"
width="16" height="16" />
</a>
无论您的状态如何,图像的路径都保持不变
使用纯HTML/CSS/JS afaik无法根据图像中返回的状态更改图像。即使在我意识到它重定向之后
我可以想出一种技术来实现这一点,但这并不容易,也不太难,但您必须使用服务器端语言,如PHP或ASP.NET
您可以将该代码更改为以下内容:
<a target="_blank" href="http://settings.messenger.live.com/Conversation/IMMe.aspx?invitee=XXXXXXXXXXX@apps.messenger.live.com&mkt=en-GB">
<img style="border-style: none;"
src="http://messenger.services.live.com/users/XXXXXXXXXXX@apps.messenger.live.com/presenceimage?mkt=en-GB"
width="16" height="16" />
</a>
<a target="_blank" href="http://settings.messenger.live.com/Conversation/IMMe.aspx?invitee=XXXXXXXXXXX@apps.messenger.live.com&mkt=en-GB">
<img style="border-style: none;"
src="proxyMyMsnImage.php"
width="16" height="16" />
</a>
proxymmsnimage.php将执行以下操作:
如果对图像不起作用,头部是否请求或获取http://messenger.services.live.com/users/XXXXXXXXXXX@apps.messenger.live.com/presenceimage?mkt=en GB
根据重定向到的图像(例如Offline.gif),您可以发送自己版本的状态图像以及正确的mime类型(例如image/gif)。
您可以缓存此操作的结果,并且仅在至少经过X个时间(例如2分钟)时更新它。
弄清楚如何检测发送给您的状态图像是目前最困难的部分,这真的很容易