0

通常,内部锚点用 定义<a name="anchorname">Introduction</a>。如果你链接到一个锚点,你会写类似<a href="#anchorname">Top</a>.

TYPO3 在每个元素之前添加一个像<a id="c118"></a>. 所以现在我在内容元素(标签:页面)上与 RTE 链接。如果我点击这样的链接<a class="internal-link" title="Some text" href="index.php?id=24#c118">Some text</a>,FF 15.0.1 将不会发生任何事情。

  • FF 15.0.1 - 不工作(什么都不做)
  • IE9 - 不工作(跳到错误的位置)
  • Safari 5.1.7 - 有效
  • Opera 12.02 - 不工作(什么都不做)
  • 铬 21 - 工作

是否有任何解决方案可以链接到 TYPO3 中同一页面上的内容元素?这是超出规范还是浏览器错误?

编辑:

现在我把它放到主设置中:

tt_content.stdWrap {
  dataWrap = |
  prepend >
  prepend = COA
  prepend {
    10 = TEXT
    10.dataWrap = <a id="c{field:uid}" name="c{field:uid}"><!-- ANCHOR --></a>
    10.if.isFalse.field = _LOCALIZED_UID
    20 = TEXT
    20.dataWrap = <a id="c{field:_LOCALIZED_UID}" name="c{field:_LOCALIZED_UID}"><!-- ANCHOR --></a>
    20.if.isTrue.field = _LOCALIZED_UID
  }
  prefixComment = 1 | CONTENT ELEMENT,
uid:{field:_LOCALIZED_UID//field:uid}/{field:CType}
}

现在我<a id="c118" name="c118"></a>在 HTML 代码中有锚点,但 FF 仍然无法工作......比我发现如果我禁用所有样式(CSS),锚点在 FF 中工作。为什么?

解决方案:

以下几行是问题所在:

.gallery {
  /* Weird anchor link bug in browsers if activated 
  position:relative;
  float:left;
  */
  width:753px;
  margin-bottom:25px;
}

仍然是为什么这会导致问题的问题......

4

2 回答 2

2

从技术上讲,这些锚点应该是正确的并且应该可以工作。参见w3.orgtt_content.stdWrap.prepend.dataWrap但是,您可以通过在 Typoscript 设置中进行修改来更改这些锚点的生成。使用 Typoscript 对象浏览器检查当前设置。

于 2012-09-19T12:20:51.987 回答
0

直到没有任何额外代码的 TYPO3 6.2.25,我使用过:

<a name="top"></a>

<a href="/index.php?id=(id-number)#top">Go to Top</a>

我在某处看到的更好的解决方案:

<a name="top"/>

<a href="" onclick="javascript:document.location.hash='top'; return false;">Goto top</a>
于 2016-07-10T21:59:12.573 回答