1

私は2つの異なるjqueryプラグインを使用して、プレースホルダーをie9で動作させようとしました.Andrew Jones oneMathias Bynens one .

残念ながら、どちらも同じ問題を抱えていて、私の人生ではそれを理解することはできません. 最初の問題は、JS コンソールで時々次のエラーが表示されることです。

SCRIPT438: Object doesn't support property or method 'placeholder'

...これは、スクリプトがロードされているにもかかわらず、ロードされていないかのようです。通常、ページを更新したときにそのエラーが表示される可能性は 50/50 です。私が遭遇している次の問題は、プレースホルダーが表示されないこともありますが、入力フィールドをクリックしてから別の場所をクリックすると、プレースホルダー テキストが最終的に表示されます。

これはレールアプリで使用されています。私はそのようにプレースホルダーを使用していますmain.js document.ready()

if (navigator.userAgent.match(/MSIE\s(?!10.0)/)) {

    $(":input[placeholder]").placeholder();
}

そして、私は次のlayouts/application.html.erbようにスクリプトを含めています:

<%=stylesheet_link_tag "normalize"%>
    <%=stylesheet_link_tag "main"%>
    <%=stylesheet_link_tag "r"%>
    <%=stylesheet_link_tag "1140"%>
    <%=stylesheet_link_tag "ie"%>
    <%=stylesheet_link_tag "jquery.placeholder.min"%>
    <%=javascript_include_tag "vendor/jquery-1.8.0.min.js"%>
    <%=javascript_include_tag "vendor/modernizr-2.6.1.min.js"%>
    <%=javascript_include_tag "vendor/css3-mediaqueries.js"%>
    <%=javascript_include_tag "vendor/jquery.fitvids.js"%>

    <%=javascript_include_tag "plugins.js"%>
    <%=javascript_include_tag "rails.js"%>
    <%=javascript_include_tag "jquery.placeholder.min.js"%>
    <%=javascript_include_tag "main.js.erb"%>   

    <%=csrf_meta_tag %> 

この問題に関するヘルプをいただければ幸いです。

4

0 に答える 0