【问题标题】:How do I get the IE6 upgrade page to display to IE7 users?如何让 IE6 升级页面显示两个 IE7 用户?
【发布时间】:2014-01-14 14:24:35
【问题描述】:

我正在使用带有 Yootheme 模板的 Joomla 1.7。有一个选项可以向 IE6 用户显示“升级您的浏览器”页面,我也想向 IE7 用户显示它。我将如何修改此代码来做到这一点?

public function isIE6() {
    if ($this['useragent']->browser() == 'msie' && $this['useragent']->version() == '6.0') {
    if ($this->get('forwardie6') !== null) {
    $this->cookie('WarpForwardie6', (int) $this->get('forwardie6') == 0 ? 'no' : 'yes');
        }
    }
return false;
}

【问题讨论】:

  • 还有其他“幕后”代码...但基本上您需要添加另一个条件“else if”并将 version() 更改为“7.0”,但其余代码需要更深入分析...

标签: joomla internet-explorer-7 internet-explorer-6


【解决方案1】:

我认为没有其他与 IE6 相关的功能,所以...

我只是改变

if ($this['useragent']->browser() == 'msie' && $this['useragent']->version() == '6.0') {

进入

if ($this['useragent']->browser() == 'msie' && ($this['useragent']->version() == '6.0' || $this['useragent']->version() == '7.0' )) {

我预计不会有任何与强制 IE7 被视为 IE6 相关的进一步问题

【讨论】:

  • 在这种情况下,您不妨将函数重命名为 isOldIE() 并使用数字解析和小于而不是两个字符串比较。然后你也覆盖 IE5 :)
  • 为什么要重命名可以在很多地方使用的功能?我完全同意将 IE5 纳入范围,此外……对于 IE4 及更低版本的用户,我将使用 exit(); 扩展该功能; :]
【解决方案2】:

我会改变这个 -

if ($this['useragent']->browser() == 'msie' && $this['useragent']->version() == '6.0') {

到这里-

if ($this['useragent']->browser() == 'msie' && int($this['useragent']->version()) < 8) {

这应该适用于任何早于 IE 8 的 IE 版本。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-07-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多