2011-12-06 10 views
4

私はviewportタグをjQM beforepageshowなどで調整しようとしましたが、それは単に機能しません。私はハイチャートチャートを持ったページが1つあり、ビューポートタグ内には何も持っていないことが普通です。width=device-width, initial-scale=1,user-scalable=no, minimum-scale=1.0, maximum-scale=1.0jquerymobile異なるメタビューポート設定を持つ1ページ

そして、それは、あるページを別のviewport設定にする方法のアイデアですか?私はAJAXなしでそれにリンクして、条件付きで正しいメタタグを出力することができますが、私はむしろこれをやりません。

答えて

4

私は小さなテキストを見て、ユーザが必要となる画像や他の何かのためにズームを有効にするとき、私は動的に私の携帯サイトのカップルにメタviewportタグを変更:

var $viewport  = $('meta[name="viewport"]'), 
    default_viewport = $viewport.attr('content'); 

$(document).delegate('#page-id-one, #page-id-two', 'pageshow', function() { 

    //these are the pages that you want to enable zooming 
    $viewport.attr('content', 'width=device-width,initial-scale=1.0,maximum-scale=5.0'); 

}).delegate('#page-id-one, #page-id-two', 'pagehide', function() { 

    $viewport.attr('content', default_viewport); 

}); 

をこのコードはする予定jQueryとメタviewportタグの後ろに含めてください。あなたは当然、viewport要素の内容を変更することができます(私はSafariでmaximum-scale10になると信じています)。

+0

これは私のために働いています(コンテンツの値を変更するなど)が、ブラウザはビューポートが変更されたことを登録していないようですので、何もできません。 – Baconbeastnz

+0

@Baconbeastnz http://m.peppermillreno.com/#propertymap1。私のAndroid(2.3.3)と私のiPhone(5.0.1)で動作します。私はそれにリンクされているページでは、ズームが可能ですが、あなたが "戻る"に行く場合は、ズームすることはできません。 – Jasper

+0

ahok ive今度はおかげで、ビューポートのスケールをフライで変更しようとするといくつかのかわいいエフェクト、1/2の幅などになりますが、調整することはできますが不快になります – Baconbeastnz

関連する問題