Когда щелкнули ссылку, я хочу добавить что-то на страницу. Однако ссылка использует PHP как
(Примечание: внутри эха):
<a id = 'linkimg1' href='main.php?img1=$img1_id'> [img1 here] </a>
у меня есть
<script>
$(document).ready(function() {
$('#linkimg1').click(function() {
$('stuff').appendTo('body')
});
});
</script>
Как заставить ссылку по-прежнему выполнять сценарий jQuery?
Вы должны добавить селектор в качестве параметра. Если вы этого не сделаете, событие напрямую связано, что не работает для динамического контента.
<script>
$(document).ready(function() {
$(document.body).on('click', '#linkimg1' ,function(){
$('stuff').appendTo('body')
});
});
</script>
Селектор является неотъемлемой частью функции.on()
.on(eventType, selector, function)
Документация API jQuery ЗДЕСЬ
Назначьте его как функцию onClick, например
<a id = 'linkimg1' href='main.php?img1=$img1_id' onclick="myFunction()"> [img1 here] </a>
<script>
$(document).ready(function() {
function myFunction() {
$('#linkimg1').click(function() {
$('stuff').appendTo('body')
});
}
});
</script>
когда вы используете обработчики событий для динамического содержимого, используйте jQuery.on() или jQuery.live() (устарело)