首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在iOS中从选择框中删除选项值

在iOS中从选择框中删除选项值
EN

Stack Overflow用户
提问于 2013-03-13 01:59:43
回答 2查看 718关注 0票数 1

此脚本不起作用,当我在iPhone上查看时,我仍然可以在选择菜单中看到它

代码语言:javascript
复制
<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;–</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>

还有……

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

额外的标签在主站点上是不可见的,但当你在iphone上查看它时,你可以看到所有的链接都是值选项。

这肯定会对它产生一些影响

代码语言:javascript
复制
(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);
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-03-14 03:27:51

我遇到的问题是,options界面(我发布的最后一行代码)调用了所有带有"href“的值来显示在下拉菜单上。这可以通过将菜单项改为,然后只使用css将div更改为链接来解决。感谢一路帮助我的每一个人!

票数 0
EN

Stack Overflow用户

发布于 2013-03-13 02:33:03

确保您引用的是jQuery库,在您的head标记中添加以下内容:

代码语言:javascript
复制
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>

上面的所有代码都是正确的。也将其放在head标记中,放在引用jQuery的脚本下。

代码语言:javascript
复制
<script type="text/javascript">
    jQuery(function($) { 
        $(".select-menu option[value='http://mphclub.com/mercedes-benz-cls-amg']").remove();
    });
</script>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15368669

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档