1

このスクリプトは機能していません。iPhoneで表示しているときに、選択メニューでスクリプトを表示できます。

<nav class="primary">
        <select class="select-menu" style="">
    <option value="#">Navigate to...</option>
    <option value="http://www.mphclub.com/">&nbsp;Home</option>
    <option value="http://www.mphclub.com/exotic-car-rental">&nbsp;Fleet</option>
    <option value="javascript:void(0)">&nbsp;–&lt;/option>
    <option value="http://www.mphclub.com/mercedes-benz-cls-amg">&nbsp;–Mercedes Benz CLS 6.3 AMG</option>
    <option value="http://mphclub.com/mercedes-benz-cls-amg">&nbsp;– </option>
</select>
</nav>

と....

    <script type="text/javascript">
jQuery(function($) { 
$(".select-menu option[value='http://mphclub.com/mercedes-benz-cls-amg']").remove();});</script>

余分なタグはメインサイトには表示されませんが、iPhoneで表示すると、すべてのリンクが値のオプションとして表示されます。

これは何らかの形でそれに影響を与えている必要があります

(function($){
$.fn.mobileMenu = function(options) {

 var defaults = {
   defaultText: 'Navigate to...',
   className: 'select-menu',
   subMenuClass: 'sub-menu',
   subMenuDash: '&ndash;'
  },
  settings = $.extend( defaults, options ),
  el = $(this);

 this.each(function(){
  // ad class to submenu list
  el.find('ul').addClass(settings.subMenuClass);

  // Create base menu
  $('<select />',{
   'class' : settings.className
  }).insertAfter( el );

  // Create default option
  $('<option />', {
   "value"  : '#',
   "text"  : settings.defaultText
  }).appendTo( '.' + settings.className );

  // Create select option from menu
  el.find('a,.separator').each(function(){
   var $this  = $(this),
     optText = $this.text(),
     optSub = $this.parents( '.' + settings.subMenuClass ),
     len   = optSub.length,
     dash;

 // if menu has sub menu
   if( $this.parents('ul').hasClass( settings.subMenuClass ) ) {
   dash = Array( len+1 ).join( settings.subMenuDash );
    optText = dash + optText;

   }

   if($this.is('span')){
    // Now build menu and append it
   $('<optgroup />', {
    "label" : optText,
   }).appendTo( '.' + settings.className );
   }
   else{
    // Now build menu and append it
   $('<option />', {
    "value" : this.href,
    "html" : optText,
    "selected" : (this.href == window.location.href)
   }).appendTo( '.' + settings.className );
   }

  }); // End el.find('a').each

  // Change event on select element
  $('.' + settings.className).change(function(){
   var locations = $(this).val();
   if( locations !== '#' ) {
    window.location.href = $(this).val();
   }
  });
  $('.select-menu').show();

 });
 return this;
};
})(jQuery);
4

2 に答える 2

0

私が抱えていた問題は、オプションインターフェイス(私が投稿したコードの最後の行)が、ドロップダウンメニューに表示されるように「href」を含むすべての値を呼び出していることです。これは、メニュー項目を代わりに変更し、cssを使用してdivをリンクに変更することで解決できます。途中で私を助けてくれたすべての人に感謝します!

于 2013-03-13T19:27:51.077 に答える
0

jQueryライブラリを参照していることを確認し、これをヘッドタグに追加します

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>

上記のコードはすべて正しいです。jQueryを参照するスクリプトの下で、これもヘッドタグ内に配置します。

<script type="text/javascript">
    jQuery(function($) { 
        $(".select-menu option[value='http://mphclub.com/mercedes-benz-cls-amg']").remove();
    });
</script>
于 2013-03-12T18:33:02.667 に答える