好吧,让我们从您不需要将 javascript 设置为元素的默认样式这一事实开始。
首先,不要在您的 javascript 中执行此操作:
$("p").css('display', 'none');
您应该使用 CSS 来设置默认样式:
p{display:none}
没有不必要的 javascript 代码可以为用户带来更好的性能。
其次,我不确定#phone 是否是 ID 的正确语义用法,ID 的用法是用于您的标记中唯一的东西。因此,对于将在列表中使用的东西,语义选择是类。
所以,让我们解决你的代码问题......
首先,您的标记也有一些问题,您的 p 标签不正确并且您的 a 标签没有关闭。下面是对您的 HTML 代码的可能更正:
<div class='phone'>
<a href='#' id='<?= $eid; ?>'>Veja nosso telefone!</a>
<p><?= $e2['telefone']; ?></p>
</div>
使用该代码来切换 p 的可见性将与以下代码一起使用
$('.phone a').on('click', function(e){
$(this).next().toggle('slow'); // this refer to the A tag that was clicked, and .next() selects the next element on the DOM, which in this case is the P tag
e.preventDefault(); // it is a good thing to use to avoid the default behavior of the A tag
});
有关树遍历方法的更多信息,您可以访问:http ://api.jquery.com/category/traversing/tree-traversal/