私のプロジェクトの前/次のボタンを作成しようとしています。これは、そのためのトリミングされたコードです。
<html>
<head>
<script>
function prevP() {var element = document.getElementById("framePage");
element = element.src;
elementLen = element.length;
elementLen = elementLen-6;
elementChar = element.charAt(elementLen)
elementChar = --elementChar
newElement = element.replace(element.charAt(elementLen),elementChar);
document.getElementById("framePage").src=(newElement);}
function nextP() {var element = document.getElementById("framePage");
element = element.src;
elementLen = element.length;
elementLen = elementLen-6;
alert(elementLen);
elementChar = element.charAt(elementLen)
elementChar = ++elementChar
newElement = element.replace(element.charAt(elementLen),elementChar);
document.getElementById("framePage").src=(newElement);}
</script>
</head>
<body>
<iframe src="www.websiteendingwithnumber1.com" id="framePage"></iframe>
</br>
<input type="button" onClick="prevP()" value="Previous">
<input type="button" onClick="nextP()" value="Next">
</body>
</html>
私のプロジェクトでは、iframe 内に表示するために約 40 ~ 120 の html ページを作成します。[前へ/次へ] ボタンを使用してそれらをめくります。各ページは動的に名前が付けられ、最後に番号が付けられます。たとえば、/path/mountpoint0/page/page0.html、page1.html ... page5.html などです。私がやろうとしているのは、基本的に、これらの各関数に iframe src の現在の URL を読み取らせ、押したボタンに応じて目的の src に設定することです。基本的に、ページ5の場合、文字列をスライスし、前にヒットした場合はsrcをpage4に設定し、次の場合はpage6に設定します。
警告!また、動的に生成された iframe HTML ファイル用に動的に生成されたマウント ポイント (ramdisk) もあります。私のプロジェクトは、マウント ポイントが存在するかどうかを検出し、それに応じて新しいマウント ポイントに名前を変更します。それで!私が見ているエラーは、html ファイルではなく、マウントポイントの番号を変更することです。例 iframe.src = /tmp/prevram0/html/page0.html. [次へ] をクリックすると、ページが見つからないというエラーが表示され、/tmp/prevram1/html/page0.html に移動しようとしています。次にもう一度押すと、別の番号 /tmp/prevram1/html/page1.html が反転します。望ましい操作は、iframe.src = /tmp/prevram0/html/page0.html です。[次へ] をクリックすると、iframe.src が /tmp/prevram0/html/page1.html に設定されます。
まとまりがなかったり、意味不明でしたらすみません。このプロジェクトのほとんどは Python で行われており、HTML/JS を使用してプロジェクトのレポート機能を作成しようとしています。私はPythonにはかなり慣れていませんが、それを回避する方法を十分に知っていますが、JSは私にとってまったく新しいものであるため、初心者の間違いを引き起こすすべての(おそらく)頭の痛みについてお詫び申し上げます。しかし、この問題を最善に処理する方法について、何らかの方向性とガイダンスが本当に欲しいです:)
どうもありがとうございました!
編集 - 簡単な説明。
EDIT 2 - これまでのすばらしいご意見に感謝いたします。本当に、本当に感謝しています!私は今仕事でいくつかのことを処理しているので、私のプロジェクトにもう少し腰を下ろす機会があれば、あなたの提案を試してみて、何が起こるか見てみましょう:) ありがとうございます(そしてギャル?)!
編集 3 - window.onload = function(){ pageNo = 0; baseUrl = document.getElementById('+q1+'baseurl'+q1+').innerHTML; }
window.onload = function(){
lPageNo = document.getElementById('+q1+'lPageNo'+q1+').innerHTML;
}
function prevP() {
if(pageNo > 1) { pageNo--; }
var prevEl = document.getElementById('framePage');
prevEl.src = baseUrl + pageNo + '.html';
}
function nextP() {
if(pageNo<lPageNo) { pageNo++; }
var nextEl = document.getElementById('framePage');
nextEl.src = baseUrl + pageNo + '.html';
}
<span id="baseurl" style="display:none;">'+prevram+'/html/page</span>
<span id="lPageNo" style="display:none;">'+str(ptit)+'</span>
( prevram 、 q1 、および ptit は、私の Python スクリプトの Python 変数です。 prevram はマウント ポイントで、 ptit はページ番号カウンターです。 q1 は一重引用符です。)