Могу ли я получить имя файла, из которого выполняется текущая задача? [Дубликат]

Начиная с jQuery 1.7, вы должны использовать jQuery.fn.on :

$(staticAncestors).on(eventName, dynamicChild, function() {});

До этого рекомендуется использовать live() :

$(selector).live( eventName, function(){} );

Однако live() устарел в 1.7 в пользу on() и полностью удален в 1.9. Подпись live():

$(selector).live( eventName, function(){} );

... может быть заменена следующей on() сигнатурой:

$(document).on( eventName, selector, function(){} );

Например, если ваша страница динамически создавала элементы с именем класса dosomething, вы привязывали бы событие к родительскому, который уже существует (здесь есть нуль проблемы, вам нужно что-то, что существует для привязки, не привязка к динамическому контенту), это может быть (и самый простой вариант) - document. Хотя иметь в виду document, возможно, не самый эффективный вариант .

$(document).on('mouseover mouseout', '.dosomething', function(){
    // what you want to happen when mouseover and mouseout 
    // occurs on elements that match '.dosomething'
});

Любой родитель, который существует в момент привязки события, прекрасен. Например,

$('.buttons').on('click', 'button', function(){
    // do something here
});

применимо к

0
задан Mornor 29 March 2017 в 09:27
поделиться

1 ответ

Вы можете попробовать _file_name:

def v2_playbook_on_start(self, playbook):
    display.warning('Current playbook: {}'.format(playbook._file_name))

Для написания плагинов требуется некоторая обратная инженерия :) Контекст для v2_playbook_on_start.

1
ответ дан Konstantin Suvorov 18 August 2018 в 22:32
поделиться
  • 1
    К сожалению, _file_name отобразит имя исполняемого файла .yml (например, main.yml). Однако этот main.yml запускается в пределах несущественной роли (скажем, ansible-deploy-apache), которая является именем, которое я пытаюсь достичь. Итак, моя структура похожа на ansible-deploy-apache/tasks/main.yml. – Mornor 29 March 2017 в 08:28
  • 2
    Я сомневаюсь, что playbook может быть вызвана ролью. Пожалуйста, добавьте более подробную информацию к исходному вопросу с помощью MCVE . – Konstantin Suvorov 29 March 2017 в 09:14
  • 3
    Я не могу делать MCVE, так как мне не разрешено публиковать свой собственный обратный вызов, и здесь это неважно. Я добавил несколько подробностей. – Mornor 29 March 2017 в 09:28
Другие вопросы по тегам:

Похожие вопросы: