0

これは、Ajax を使用せずに外部ページをロードするが、iOS Web アプリ ウィンドウを維持することについて、以前に投稿した質問への追加です。その例のために私が思いついたのはこれでした

<script>
$(document).bind('pageinit', function() {
  $("#test").click(function (event) {
    event.preventDefault();
    window.location.assign("test.html");
  });
});
</script>

しかし今、私がやりたいことは、そのページにあるすべてのリンクに対してこれを設定することです. リンクがいくつあるかわからないので、新しいリンクを追加するたびにこれを行うのは非常に面倒です。だから私はこのスニペットを見つけて、2つを何らかの方法で組み合わせることができると思いました.方法についての指示が必要です.

$('a').each(function(index){
var elementId=$(this). attr("id");
elementId='#'=elementId;

したがって、ページのタグまたは href ごとに、リンクが自動的に取得され、その特定の方法で自動的に読み込まれます。

4

1 に答える 1

1

もちろん、コードを組み合わせることもできます。とにかく私はあなたのコードを試していませんが、クリックイベントの周りに .each() 関数をラップする必要があります。また、クリック可能なすべてのリンクに同じクラスを与える必要があります。次のようになります。

$('.class').each(function(){
  $(this).click(function(){
    event.preventDefault();
    window.location.assign("test.html");
  })
});

これらのリンクを別のページにリンクさせたい場合は、各リンクに data-href 属性を定義できます。このように:data-href="test2.html"あなたのhtmlで。使えるようになりました

$(this).data("href");

出力を変数に入れます。その後、window.location.assign に動的に配置できます。

私があなたの問題を理解し、それが役に立ったことを願っています。

于 2013-02-12T16:54:34.687 に答える