У меня возникли проблемы с удалением элемента, который динамически добавляется в DOM. Все в сценарии ниже работает так, как предполагается, за исключением метода remove внутри обработчика mouseleave. Я предполагаю, что я делаю ошибку с селектором CSS, но я не уверен, что это такое. Любая помощь будет высоко ценится!Сложность Удаление элемента Div через JQuery
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Index</title>
<link href="/Content/Site.css" rel="stylesheet" type="text/css" />
<script src="/Scripts/jquery-1.5.1.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(function()
{
$('#myTr').mouseenter(function()
{
var cell1 = $(this).children(':first');
cell1.css('position', 'relative');
var myDiv = document.createElement('div');
var myChildDiv = document.createElement('div');
myChildDiv.style.position = 'absolute';
myChildDiv.style.height = '20px';
myChildDiv.style.width = '30px';
myChildDiv.style.opacity = '0.6';
myChildDiv.style.background = 'grey';
$(cell1).prepend(myDiv);
$(myDiv).append(myChildDiv);
})
.mouseleave(function()
{
$(this).remove('td:first-child>div');
});
});
</script>
</head>
<body>
<table>
<tbody>
<tr id="myTr">
<td style="width: 200px;">
Anytown, MA
</td>
</tr>
</tbody>
</table>
</body>
</html>
Спасибо за рекомендации! Я не часто использую этот синтаксис, но он выглядит намного чище, чем то, что я написал! – Andrew
Просто вопрос конвенции. Единственное различие заключается в том, что я создаю объект jQuery (поэтому вы можете назначить ему событие .click() »). Объекты элемента DOM "не делают этого, если вы не обернете их в функцию jQuery' $() '. – Blender