Verwendung von target="_top" in der Vorschau

In einem Link haben die Frame-Werte _top und _parent die besondere Eigenschaft, das Linkziel in einem übergeordneten Frame innerhalb des Browserfensters darzustellen. Da der Content-Navigator ab Version 6.5 für die Vorschau Frames verwendet, werden beim Klicken auf einen Link in der Vorschau unter Umständen Bedienelemente wie das Menü und die Werkzeugleiste unzugänglich.

Dieses Verhalten lässt sich umgehen, indem der Content angepasst wird. Erweitern Sie hierfür das Layout, mit dem HTML-Head und -Body erzeugt werden, um folgende Anweisungen:

<head>
  
  <npsobj condition="isEqual" name1="exportMode" value2="preview">
    <npsobj modifyvar="set" varname="adjustTargetsInPreview">adjustTargetsInPreview()</npsobj>
    <script type="text/javascript">
      function <npsobj insertvalue="var" name="adjustTargetsInPreview" />
      {
        var previewFrameName = "nps_browser_frame";
        var elements = document.getElementsByTagName('a');
        for (var i = 0; i < elements.length; i++) {
          var target = elements[i].target;
          if ("_top"==target || ("_parent"==target && previewFrameName == self.name)) {
            target = previewFrameName;
          }
          elements[i].target = target;
        }
      }
    </script>
  </npsobj>
  
</head>

<body onload="@{adjustTargetsInPreview}">
  
</body>

Dieses Skript sorgt innerhalb der Vorschau dafür, dass der Frame-Wert eines Links nie den eigentlichen Vorschaubereich verlässt.