リンクをダウンロードするオプションが表示されましたが、すべてのリンクの自動ダウンロードが見つかりませんでした。jqueryまたはvanilla javascriptの自動読み込み(jquery load)ページ内のすべてのリンクコンテンツ
自動ロードが必要ですが、jquery loadまたはajaxまたはhttp requestまたはloadPageSectionを使用することは重要ではありません。どのオプションも問題ありません。
まずは、リンクごとにクリックエミュレーションでもっとも簡単なバージョンを考えました。
$(function() {
document.querySelector('.className').click();
});
$("a").click(function() {
$("#pageLoad").load($(this).attr("href"));
return false;
});
ただし、リダイレクトとして機能し、最初のページにリダイレクトされました。今まで、最初のページのみが
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(function() {
$('a').each(function() {
$(".pageLoad").load($(this).attr('href'));
});
});
</script>
<table align="center">
<tr><td>
<a href="test.html" class="className">first</a>
<div class="pageLoad"></div></td><td>
<a href="test1.html" class="className">second</a>
<div class="pageLoad"></div></td><td>
<a href="test.html" class="className">third</a>
<div class="pageLoad"></div></td></tr>
</table>
すべてのページがロードされていることが必要であるがロードされているものの、 次に、私は各(function()
のクリックを交換し、すべてが動作します。 <a href
理想的には、<div class = "pageLoad">
はありません。すべてが自動的にdivを生成し、おそらくは子供として追加されるべきです。
さらに重要なことに、jQueryを使用すると、load ('test.html #target');
を使用して必要な要素をダウンロードすることができます。
$(". pageLoad").load($ (this #target).attr ('href'));
は動作しません。
この場合、必要なフラグメントをダウンロードするにはどうすればよいですか?
最後に:読み込まれたページにリンクがある場合は問題がありますか?すべてが1回ロードされている間は問題はありません。
ページ内のすべてのリンクに対して、リンクの内容を一度だけ読み込む必要があります。
これらの問題の解決策は、私にとっては複雑すぎます。
更新:
<script>
$.ajaxSetup({
'beforeSend' : function(xhr) {
xhr.overrideMimeType('text/html; charset=windows-1251');
},
});
$(function() {
$('a').each(function() {
$(this).parent().find(".pageLoad").load($(this).attr('href') + ' #inf-1751');
});
});
</script>
私は、エンコーディングの表示を修正しました。 最後の問題は、要素のアンカーを使用することです。 アンカーだけを追加した場合は、ページのコピーを読み込みます。別のページにある場合は、アンカーも動作せず、ページ全体が読み込まれます。
ですから、それぞれ別々のdivにページをロードする
.pageLoad
を追加する必要が.pageLoad
を追加しないようにたい場合は? – Firanolfind
誰にでも普遍的な機能を持たせるのが良いでしょうが、私にとっては、それは十分です。そのような結果は、常に正規表現を使ってdivを追加するか、かなり簡単に作成することです。 – novicer
私はあなたを得て、私の更新された答えをチェックすると信じています。 – Firanolfind