1

这是我的(缩短的)代码:

lib.nav = COA
lib.nav {
  50 = HMENU
  50 { 
      [ ... ]
  wrap = <nav>|</nav> 
  }
}

[browser = msie] && [version = <9]
lib.nav.50.wrap = <div id="nav">|</div> 
[global]

我知道(做过):

  • [browser = msie]单独工作,但适用于所有 IE(我需要少于 9 个)
  • 我安装了conditions扩展
  • 我搜索了它,但找不到任何适合的问题的东西

我需要的是一个可行的 TS 片段,或者可能是一种解决方法。谢谢!

4

4 回答 4

2

我知道这个问题很老了,但我刚刚解决了类似的问题。在我的情况下,条件失败了,因为我在这样的块中使用了它:

config {
    # htmlTag_setParams, adding language and some classes for the Foundation framework
    [browser = msie] && [version =< 9]
    htmlTag_setParams = lang="{$config.language}" class="no-js lt-ie9"
    [else]
    htmlTag_setParams = lang="{$config.language}" class="no-js"
    [global]
}

我一改写为

# htmlTag_setParams, adding language and some classes for the Foundation framework
[browser = msie] && [version =< 9]
config.htmlTag_setParams = lang="{$config.language}" class="no-js lt-ie9"
[else]
config.htmlTag_setParams = lang="{$config.language}" class="no-js"
[global]

它开始按预期工作

PS 我正在使用 Typo3 v6.1

于 2013-10-30T10:50:25.000 回答
1

你的情况看起来是正确的。

所以,也许你有一个不同的错误?尝试通过测试没有副作用的条件来区分您的问题。创建一个新页面,创建一个新的 ts-template 并将这段代码放入其中:

page >
page = PAGE
page.typeNum = 0
page.10 = TEXT
[browser = msie] && [version = <9]
page.10.value = Condition is meet
[else]
page.10.value = Condition is not meet
[global]

现在在浏览器中打开此页面。现在您可以调整您的条件。如果一切正常,问题就出在其他地方。

于 2011-11-06T21:00:13.680 回答
0

如果您的脚本存储并嵌套在文件系统中(例如,使用 INCLUDE_TYPOSCRIPT),请尝试将您的条件直接插入您的typo3 后端,在您的主模板的设置字段中

#your previously included file
<INCLUDE_TYPOSCRIPT: source="FILE:fileadmin/templates/_TypoScript/myTyposcriptFile.ts">

#your condition
page >
page = PAGE
page.typeNum = 0
page.10 = TEXT
[browser = msie] && [version = <9]
page.10.value = Condition is meet
[else]
page.10.value = Condition is not meet
[global]

您还可以使用TypoScript 对象浏览器底部的“条件”功能检查您的条件是否按预期工作。

于 2014-01-14T18:23:50.913 回答
0

问题是 [browser = msie] 不再工作(T3 4.5+)。即使我在 Internet Explorer 中观看,测试设置始终显示条件不满足。

于 2014-01-15T15:16:05.900 回答