Объедините два одинаковых сценария jQuery в сценарий if / then

Я пытаюсь объединить два цикла jQuery, основываясь на коде из ответов на вопросыВот, которые удаляют изображения и фреймы из постов WordPress и перемещают их либо в новые div, либо в новые списки. Мои предыдущие вопросы были направлены на достижение каждого из этих результатов независимо, но теперь мне нужно объединить их на одной странице, выбрав, какой из них использовать на основе родительского контейнера.

В частности, я хочу, чтобы первый скрипт запускался на всех<section> контейнеры, кроме одного с#clients Я БЫ. Тот должен использовать второй сценарий.

Я предполагаю, что мне, вероятно, нужна какая-то логика if / then, которая запускает код, соответствующий селектору, но мне трудно добиться этого. В настоящее время один скрипт ломает другой.

Вот два сценария - обратите внимание на комментарий в скобках в строке 4:

jQuery("document").ready (function($){
// Elements you want to match
var matchesEl = "img, iframe"

// For each section [I have added a 'not-#clients' selector, which doesn't work but gives an idea of the logic I'm attempting], get its index number and do the following:
$('section !#clients').each(function(index){

//If there is a matched element (for each section),
if ($(this).find(matchesEl).length > 0) {

  // create a div.royalSlider and prepend to this section
  $('<div>', {'class': 'royalSlider'}).prependTo(this)

  // For each matched element into this section (we don't need to get index number here), 
  $(this).find(matchesEl).each(function() {

    // add .rsImg class to this element and insert on the div.royalSlider,
    // not any div.royaSlider, but that one with equivalent index given before
    $(this).addClass('rsImg').appendTo($('section .royalSlider').eq(index));

  });

}

});
});

jQuery("document").ready (function($){
var matchesEl = "img, iframe"

$('section #clients').each(function(index){

if ($(this).find(matchesEl).length > 0) {

  $('<ul>').appendTo($('section');

  $(this).find(matchesEl).each(function() {
    //The line code under will only works if all your <section>s always have at least one matched element.
    //$("<li>").append($(this)).appendTo($('section ul').eq(index));
    //So the right code is:
    $("<li>").append($(this)).appendTo($('section').eq(index).children('ul'));
  });

}
$('p').filter(function () { return $.trim(this.innerHTML) == "" }).remove();
});
});

Вместо того, чтобы запускать два конфликтующих скрипта, мне нужно разработать один скрипт, который будет выборочно запускаться на основе селектора jQuery.

Я бы попытался написать этот унифицированный скрипт и опубликовать его здесь, а не показывать два, но в настоящее время второй скрипт (который пытается создать<ul> elements) не работает вообще, и я не уверен, как заставить это работать в одиночку, что, по-видимому, является необходимым условием для их объединения.

Если это поможет, можно посмотреть сайт, над которым я работаю (на стадии разработки!)Вот.

Заранее большое спасибо за любую помощь в этом.

Ответы на вопрос(1)

Ваш ответ на вопрос