Javascript 如何分配和使用DOM元素作为变量

Javascript 如何分配和使用DOM元素作为变量,javascript,jquery,Javascript,Jquery,我希望能够将一个html元素分配给一个变量,然后像处理实际的DOM元素一样处理它 在本例中,我希望在调用showart()函数时,它将获取正在传递的ID,显示div,因为它的默认值是隐藏的,并在div内设置一个文本值 最好的方法是什么 HTML: 可以将jQuery对象传递到函数中 var showAlert = function ($el, mes){ $el.show(); $el.append('<p>'+ mes +'&l

我希望能够将一个html元素分配给一个变量,然后像处理实际的DOM元素一样处理它

在本例中,我希望在调用showart()函数时,它将获取正在传递的ID,显示div,因为它的默认值是隐藏的,并在div内设置一个文本值

最好的方法是什么

HTML:


可以将jQuery对象传递到函数中

var showAlert = function ($el, mes){                   
    $el.show();
    $el.append('<p>'+ mes +'</p>');
};

showAlert($('.item'), 'My Message');
var showAlert=函数($el,mes){
$el.show();
$el.append(''+mes+'

'); }; showAlert($('.item'),“我的消息”);
您可以在下面执行类似操作。这将使用您传递的id并用适当的消息显示div。您只需要确保在检查元素之前等待DOM完全加载

<html>
<head>
    <script src="http://code.jquery.com/jquery-1.7.1.js"></script>
</head>
<body>
    <div class="alert" id="custAlert" style="display: none"></div>
    <input type="button" class="showError" value="click me to show error" />

    <script type="text/javascript">
        function showAlert(divID, msg) {
            $('#' + divID).html(msg);
            $('#' + divID).show();
        }

        $(function() {
            $('.showError').click(function() {
                showAlert('custAlert', 'this is an error');
            });
        });
    </script>

</body>

</html>

函数showAlert(divID,msg){
$('#'+divID).html(msg);
$('#'+divID).show();
}
$(函数(){
$('.bathror')。单击(函数(){
showAlert('custAlert','这是一个错误');
});
});

我觉得这个代码不错。不确定这里有什么问题。这是“offpage DOM”的同义词吗?这有点关联:除非您想使用全局变量,否则请确保在
currentDiv
的第一个实例之前使用
var
语句,以便在本地创建变量。问题是什么?这段代码似乎工作得很好。
var showAlert = function ($el, mes){                   
    $el.show();
    $el.append('<p>'+ mes +'</p>');
};

showAlert($('.item'), 'My Message');
<html>
<head>
    <script src="http://code.jquery.com/jquery-1.7.1.js"></script>
</head>
<body>
    <div class="alert" id="custAlert" style="display: none"></div>
    <input type="button" class="showError" value="click me to show error" />

    <script type="text/javascript">
        function showAlert(divID, msg) {
            $('#' + divID).html(msg);
            $('#' + divID).show();
        }

        $(function() {
            $('.showError').click(function() {
                showAlert('custAlert', 'this is an error');
            });
        });
    </script>

</body>

</html>