<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- This manual is for GNU Texinfo (version 6.7, 23 September 2019),
a documentation system that can produce both online information and a
printed manual from a single source using semantic markup.
Copyright (C) 1988, 1990, 1991, 1992, 1993, 1995, 1996, 1997,
1998, 1999, 2001, 2001, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019 Free Software
Foundation, Inc.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with no
Invariant Sections, with no Front-Cover Texts, and with no Back-Cover
Texts. A copy of the license is included in the section entitled
"GNU Free Documentation License". -->
<!-- Created by GNU Texinfo 6.7, http://www.gnu.org/software/texinfo/ -->
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>HTML Xref Mismatch (GNU Texinfo 6.7)</title>
<meta name="description" content="HTML Xref Mismatch (GNU Texinfo 6.7)">
<meta name="keywords" content="HTML Xref Mismatch (GNU Texinfo 6.7)">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="texi2any">
<link href="index.html" rel="start" title="Top">
<link href="Command-and-Variable-Index.html" rel="index" title="Command and Variable Index">
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="HTML-Xref.html" rel="up" title="HTML Xref">
<link href="HTML-Xref-Configuration.html" rel="next" title="HTML Xref Configuration">
<link href="HTML-Xref-8_002dbit-Character-Expansion.html" rel="prev" title="HTML Xref 8-bit Character Expansion">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.indentedblock {margin-right: 0em}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
kbd {font-style: oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
span.nolinebreak {white-space: nowrap}
span.roman {font-family: initial; font-weight: normal}
span.sansserif {font-family: sans-serif; font-weight: normal}
ul.no-bullet {list-style: none}
-->
</style>
</head>
<body lang="en">
<span id="HTML-Xref-Mismatch"></span><div class="header">
<p>
Next: <a href="HTML-Xref-Configuration.html" accesskey="n" rel="next">HTML Xref Configuration</a>, Previous: <a href="HTML-Xref-8_002dbit-Character-Expansion.html" accesskey="p" rel="prev">HTML Xref 8-bit Character Expansion</a>, Up: <a href="HTML-Xref.html" accesskey="u" rel="up">HTML Xref</a> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Command-and-Variable-Index.html" title="Index" rel="index">Index</a>]</p>
</div>
<hr>
<span id="HTML-Cross_002dreference-Mismatch"></span><h4 class="subsection">22.4.5 HTML Cross-reference Mismatch</h4>
<span id="index-HTML-cross_002dreference-mismatch"></span>
<span id="index-Mismatched-HTML-cross_002dreference-source-and-target"></span>
<p>As mentioned earlier (see <a href="HTML-Xref-Link-Basics.html">HTML Xref Link Basics</a>), the generating
software may need to guess whether a given manual being cross
referenced is available in split or monolithic form—and, inevitably,
it might guess wrong. However, when the <em>referent</em> manual is
generated, it is possible to handle at least some mismatches.
</p>
<p>In the case where we assume the referent is split, but it is actually
available in mono, the only recourse would be to generate a
<samp>manual/</samp> subdirectory full of HTML files which redirect back to
the monolithic <samp>manual.html</samp>. Since this is essentially the same
as a split manual in the first place, it’s not very appealing.
</p>
<p>On the other hand, in the case where we assume the referent is mono,
but it is actually available in split, it is possible to use
JavaScript to redirect from the putatively monolithic
<samp>manual.html</samp> to the different <samp>manual/node.html</samp> files.
Here’s an example:
</p>
<div class="example">
<pre class="example">function redirect() {
switch (location.hash) {
case "#Node1":
location.replace("manual/Node1.html#Node1"); break;
case "#Node2" :
location.replace("manual/Node2.html#Node2"); break;
…
default:;
}
}
</pre></div>
<p>Then, in the <code><body></code> tag of <samp>manual.html</samp>:
</p>
<div class="example">
<pre class="example"><body onLoad="redirect();">
</pre></div>
<p>Once again, this is something the software which generated the
<em>referent</em> manual has to do in advance, it’s not something the
software generating the cross-reference in the present manual can
control.
</p>
</body>
</html>