Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 一个不完整的问题。这里“简单”和“复杂”到底是怎么定义的?复杂元素是否只具有treeview类,还是有特定的结构?@SpencerWieczorek复杂元素有treeview类,在turm中有一个ul元素和“treeview菜单类”,而li元素有一个带hr_Javascript_Jquery - Fatal编程技术网

Javascript 一个不完整的问题。这里“简单”和“复杂”到底是怎么定义的?复杂元素是否只具有treeview类,还是有特定的结构?@SpencerWieczorek复杂元素有treeview类,在turm中有一个ul元素和“treeview菜单类”,而li元素有一个带hr

Javascript 一个不完整的问题。这里“简单”和“复杂”到底是怎么定义的?复杂元素是否只具有treeview类,还是有特定的结构?@SpencerWieczorek复杂元素有treeview类,在turm中有一个ul元素和“treeview菜单类”,而li元素有一个带hr,javascript,jquery,Javascript,Jquery,一个不完整的问题。这里“简单”和“复杂”到底是怎么定义的?复杂元素是否只具有treeview类,还是有特定的结构?@SpencerWieczorek复杂元素有treeview类,在turm中有一个ul元素和“treeview菜单类”,而li元素有一个带hrefYou的“a”元素,你忘了发布JavaScriptI,我还没有弄清楚js能解决这个问题。。目前我只有var my_url=“url string to match”您应该尝试解决您的问题,否则这是一个不完整的问题。这里到底是如何定义“简单”




一个不完整的问题。这里“简单”和“复杂”到底是怎么定义的?复杂元素是否只具有
treeview
类,还是有特定的结构?@SpencerWieczorek复杂元素有treeview类,在turm中有一个ul元素和“treeview菜单类”,而li元素有一个带hrefYou的“a”元素,你忘了发布JavaScriptI,我还没有弄清楚js能解决这个问题。。目前我只有var my_url=“url string to match”您应该尝试解决您的问题,否则这是一个不完整的问题。这里到底是如何定义“简单”和“复杂”的?复杂元素只是有
treeview
类,还是有特定的结构?@SpencerWieczorek复杂元素有treeview类,它在turm中有一个ul元素和'treeview menu class',这个ul元素又有li元素,它有'a'元素和hrefYeah,这个代码根本不应该工作,
Array.prototype.forEach()
是纯JavaScript/DOM,您将其链接到jQuery集合/对象。您可能打算使用jQuery的
each()
method@@Arnab如果您的问题有点不清楚,可能需要对其进行编辑。我已经用我认为您的问题所在的内容修改了我的示例代码。复杂的情况不起作用。。jsfiddle.net/8k0v9eyL/4只有具有treeview类的li,该类下具有reqd url的元素,才应处于活动状态。。并非所有你的JSfilddle都不是为了我的答案,而是为了@Spencer Wieczoreksorry。。plz查看复杂部分ur logic在简单场景中检查href中的url,如果未找到相同的url,则会将所有复杂li元素的活动添加到树状视图中。。我需要的是,它必须查找具有my_url值的ahref,然后查找其父li,然后查找chk,如果该父li具有treeview类。。向其添加活动类是的,该代码根本不应该工作,
Array.prototype.forEach()
是普通的JavaScript/DOM,您将其链接到jQuery集合/对象。您可能打算使用jQuery的
each()
method@@Arnab如果您的问题有点不清楚,可能需要对其进行编辑。我已经用我认为您的问题所在的内容修改了我的示例代码。复杂的情况不起作用。。jsfiddle.net/8k0v9eyL/4只有具有treeview类的li,该类下具有reqd url的元素,才应处于活动状态。。并非所有你的JSfilddle都不是为了我的答案,而是为了@Spencer Wieczoreksorry。。plz查看复杂部分ur logic在简单场景中检查href中的url,如果未找到相同的url,则会将所有复杂li元素的活动添加到树状视图中。。我需要的是,它必须查找具有my_url值的ahref,然后查找其父li,然后查找chk,如果该父li具有treeview类。。将活动类添加到它简单的情况下工作复杂的情况下不。。只有在具有reqd url的元素的li with treeview类应处于活动状态。。不all@Arnab哦,很抱歉,我错过了阅读您的
a)
部分(以为您提到了简单的情况),一秒钟。因此,代码必须确定href是否位于具有treeview类的父li元素的li中,如果是,则将active添加到类中attrib@Arnab对不起,误会了,我已经更新了我的问题。@Arnab如果您使用的是实际字符串值
my_url
,而不是变量,您将希望将其连接到字符串(
“a[href=”+my_url+“]”)
)。连接字符串时,请小心双引号,因为双引号用于字符串。简单的情况下有效,复杂的情况下无效。。只有在具有reqd url的元素的li with treeview类应处于活动状态。。不all@Arnab哦,很抱歉,我错过了阅读您的
a)
部分(以为您提到了简单的情况),一秒钟。因此,代码必须确定href是否位于具有treeview类的父li元素的li中,如果是,则将active添加到类中attrib@Arnab对不起,误会了,我已经更新了我的问题。@Arnab如果您使用的是实际字符串值
my_url
,而不是变量,您将希望将其连接到字符串(
“a[href=”+my_url+“]”)
)。连接字符串时要小心双引号,因为双引号用于字符串。使用jQuery可以,他们将其作为标记添加到编辑中。而且,这似乎只处理简单的情况,而不处理复杂的情况。它同时处理这两种情况。它不断向上遍历以突出显示“LI”类型的所有祖先(直到到达父菜单)。我将添加我的jQuery解决方案,因为他们添加了该标记。他们不希望对作为祖先的每个
li
元素都这样做。确实如此,请查看标记。当它到达菜单时会停止。不,它们不会。他们明确地说:“在本例中,活动值在两个位置附加到类上…”。他们可以使用jQuery,他们将其作为标记添加到编辑中。而且,这似乎只处理简单的情况,而不处理复杂的情况。它同时处理这两种情况。它不断向上遍历以突出显示“LI”类型的所有祖先(直到到达父菜单)。我将添加我的jQuery解决方案,因为他们添加了该标记。他们不希望对作为祖先的每个
li
元素都这样做。确实如此,请查看标记。当它到达菜单时会停止。不,它们不会。他们明确地说:“在这种情况下,活跃的价值观在两个地方附着于阶级……”。
<ul class="sidebar-menu"> /<ul>
<li>
                <a href="/Campaign/CreateCampaignUrl">
                    <i class="fa fa-th"></i> <span>Campaign Url</span>
                    <small class="label pull-right bg-green">new</small>
                </a>
            </li>
<li class="treeview">
                <a href="#">
                    <i class="fa fa-files-o"></i>
                    <span>Classify Events</span>
                    <span class="label label-primary pull-right">4</span>
                </a>
                <ul class="treeview-menu">
                    <li><a href="/ClassificationUI/ClassifyStandardEvent"><i class="fa fa-circle-o"></i> Standard Events</a></li>
                    <li><a href="/Campaign/ClassifyCampaignProperties"><i class="fa fa-circle-o"></i> Campaign Properties</a></li>
                </ul>
            </li>
<li class="active">
                    <a href="/Campaign/CreateCampaignUrl">
                        <i class="fa fa-th"></i> <span>Campaign Url</span>
                        <small class="label pull-right bg-green">new</small>
                    </a>
                </li>
<li class="treeview active">
                    <a href="#">
                        <i class="fa fa-files-o"></i>
                        <span>Classify Events</span>
                        <span class="label label-primary pull-right">4</span>
                    </a>
                    <ul class="treeview-menu">
                        <li class="active"><a href="/ClassificationUI/ClassifyStandardEvent"><i class="fa fa-circle-o"></i> Standard Events</a></li>
                        <li><a href="/Campaign/ClassifyCampaignProperties"><i class="fa fa-circle-o"></i> Campaign Properties</a></li>
                    </ul>
                </li>
var my_url = '/ClassificationUI/ClassifyStandardEvent';

$('.sidebar-menu>li').each(function(){
  var add_active = false;
  $(this).find('a').each(function(){
    if ($(this).attr('href') == my_url){
        if (!add_active) {
        add_active = true;
      }
    }
  });
  if (add_active) {
    $(this).addClass('active');
  }
});
// Simple
$("ul.sidebar-menu > li").find("a[href='/Campaign/CreateCampaignUrl']")
        .parent("li").addClass("active");
// Complex
var $aSelector = $("ul.sidebar-menu > li.treeview > ul.treeview-menu > li")
        .find("a[href='/ClassificationUI/ClassifyStandardEvent']");

$aSelector.parent("li").addClass("active");
$aSelector.closest("li.treeview").addClass("active");
var my_url = '/ClassificationUI/ClassifyStandardEvent';

var menu = document.getElementsByClassName('sidebar-menu')[0];
var links = menu.getElementsByTagName('a');

function highlight(linkEl) {
  var el = linkEl;

  do {
    el = el.parentNode;
    if (el.tagName === 'LI') el.className += ' active';
  } while (el !== menu);
}

var i, linkEl;

for (i = 0; i < links.length; i += 1) {
  linkEl = links[i];

  if (linkEl.getAttribute('href') === my_url) {
    highlight(linkEl);
    // break here to stop at first match
  }
}
var my_url = '/ClassificationUI/ClassifyStandardEvent';

var $menus = $('.sidebar-menu');

$menus.each(function (i) {
  var $menu = $menus.eq(i);
  var $links = $menu.find('a[href="' + my_url +'"]');

  $links.each(function (i) {
    var $link = $links.eq(i);
    $link.parentsUntil($menu ,'li').addClass('active');
  });
});