Mootools: खींचें और ड्रॉप समस्या

मैंने इस प्रश्न को मुट्टूल वेबसाइट पर मंचों से पूछा है और एक व्यक्ति ने कहा है कि एक व्यवस्थापक के साथ आने से पहले मेरा वर्ग चयन दूषित हो गया था और मेरी पोस्ट स्थिति को अमान्य कर दिया गया था। कहने की जरूरत नहीं है कि इससे ज्यादा मदद नहीं मिली। इसके बाद मैंने बिना किसी प्रतिक्रिया के mootools के लिए एक Google समूह में पोस्ट किया। मेरा सवाल यह है कि मेरे '.drop' तत्वों के लिए 'एंटर', 'छोड़ें', 'ड्रॉप' घटनाएं क्यों नहीं होतीं? .drag तत्वों के लिए घटनाएं काम कर रही हैं।

<title>Untitled Page</title>
<script type="text/javascript" src="/SDI/includes/mootools-1.2.js"></script>
<script type="text/javascript" src="/SDI/includes/mootools-1.2-more.js"></script>
<script type="text/javascript" charset="utf-8">
    window.addEvent('domready', function() {
        var fx = [];
        $$('#draggables div').each(function(drag){
            new Drag.Move(drag, {
                droppables: $$('#droppables div'),
                onDrop: function(element, droppable){
                    if(!droppable) {
                    }
                    else {
                        element.setStyle('background-color', '#1d1d20');
                    }
                    element.dispose();
                },
                onEnter: function(element, droppable){
                    element.setStyle('background-color', '#ffffff');
                },
                onLeave: function(element, droppable){
                    element.setStyle('background-color', '#000000');
                }
            });
        });

        $$('#droppables div').each(function(drop, index){
            drop.addEvents({
                'enter': function(el, obj){
                    drop.setStyle('background-color', '#78ba91');
                },
                'leave': function(el, obj){
                    drop.setStyle('background-color', '#1d1d20');
                },
                'drop': function(el, obj){
                    el.remove();
                }
            });
        });
    });
</script>

<form id="form1" runat="server">
<div>
    <div id="draggables">
    <div class="drag"></div>
    <div class="drag"></div>
    <div class="drag"></div>
    <div class="drag"></div>
    <div class="drag"></div>
    <div class="drag"></div>
    <div class="drag"></div>
    <div class="drag"></div>
    <div class="drag"></div>
    <div class="drag"></div>
</div>

<div id="droppables">
    <div class="drop"></div>
    <div class="drop"></div>
    <div class="drop"></div>
    <div class="drop"></div>
    <div class="drop"></div>
    <div class="drop"></div>
</div>

</div>
</form>
0
ro fr bn

2 उत्तर

ठीक है, ऐसा लगता है कि यहां कुछ समस्याएं हैं। जहां तक ​​मैं कह सकता हूं, mootools में "droppable" जैसी कोई चीज़ नहीं है। इसका मतलब है कि 'एंटर', 'छोड़ें' और 'ड्रॉप' जैसी आपकी घटनाएं काम नहीं करेंगी। (ये ड्रैग ऑब्जेक्ट पर घटनाएं हैं)

यदि आप उन नामों को उन घटनाओं में बदलते हैं जो mootools में तत्व हैं (जैसे, DOM ईवेंट) आपका कोड पूरी तरह से काम करता है। उदाहरण के लिए, यदि आप 'एंटर' और 'माउस' को 'माउसओवर' और 'माउसआउट' में बदलते हैं, तो आपकी घटनाएं बिना किसी समस्या के आग लगती हैं। (विंडोज विस्टा पर ओपेरा 9.51)

यह इस के लिए प्रलेखन में revelant लाइन प्रतीत होता है, जो आँकड़े डीओएम घटनाओं का उपयोग करने के लिए।

http://docs.mootools.net/Element/Element.Event#Element: addEvents

साथ ही, उस पृष्ठ पर, उन घटनाओं का एक लिंक है जो नियमित तत्वों के पास हो सकते हैं

http://www.w3schools.com/html/html_eventattributes.asp

हालांकि, सलाह "टीजी एसडी में "आपको नुकीले मंचों में दिया गया शायद सबसे अच्छा है। यदि आप कर सकते हैं, इन घटनाओं का उपयोग परेशान मत करो। ड्रैग करने योग्य ऑब्जेक्ट में जो भी करना है उसे रखें, और अपने आप को इस परेशानी को बचाएं।

0
जोड़ा

Mootools डॉक्स के अनुसार, " droppables " एक है Drag.Move कक्षा द्वारा अपेक्षित विकल्पों में से। वास्तव में, यह उन तत्वों की सरणी है जो तत्व के साथ बातचीत करते हैं जब यह " ड्रॉप ," " दर्ज करें ," और " छोड़ें "घटना।

0
जोड़ा