0

我有一个问题,我创建了一个用户可以多次创建的 div。

var innerdiv = $('<div>');
innerdiv.attr('class','dropzoneobject');
innerdiv.attr('onclick', 'changeText(this)').appendTo(div); 

这个 div 有一个以 this 为参数的 onclick 动作。

function changeText(object) {
var editor = document.getElementById('editortools');
var display = editor.style.display = 'block';
var text = object.firstChild;   

$('#color').change(function(object) {
var color = document.getElementById('color').value;
var text = object.firstChild;
text.style.color = color;   
    });
            }

在函数 changeText 中,我可以通过 onclick 事件从 div 获得的对象参数发出警报并执行所有操作。

但是在change()函数中..对象参数不见了!:(

我的问题:如何在第二个函数中获得相同的对象?

function changeText(object) {
alert(object);
//I can see the object !
$('#color').change(function() {
alert(object);
// no object here :C
});
}

修复了它:) 这是有同样问题的窥视代码

function changeText(object) {
            selectedDiv = object;
            $("#editortools").fadeIn();
        }

        var selectedDiv = null;

        $(document).ready(function() {
            $('#color').change(function() {
                if(selectedDiv != null){
                    selectedDiv.style.color = $('#color').val();
                }
            });
4

0 回答 0