এইচটিএমএল টানুন এবং মোবাইল ডিভাইসগুলি ড্রপ করুন


91

আপনি যখন জাভাস্ক্রিপ্ট ব্যবহার করে কোনও ওয়েব পৃষ্ঠায় টানা এবং ড্রপ যুক্ত করেন, যেমন jQuery UI ড্রাগেজেবল এবং ড্রপযোগ্য, কোনও মোবাইল ডিভাইসে ব্রাউজারের মাধ্যমে দেখার সময় আপনি কীভাবে এটি কাজ করতে পারবেন - যেখানে টেনে আনার জন্য টাচ-স্ক্রিন ক্রিয়াকলাপগুলি বাধা দেয় পেজ চারপাশে স্ক্রোলিং জন্য ফোন?

সমস্ত সমাধান স্বাগত জানায় ... আমার প্রাথমিক চিন্তাগুলি হ'ল:

  1. মোবাইল ডিভাইসের জন্য একটি বোতাম রয়েছে যা আইটেমটি টেনে আনার জন্য "উত্তোলন" করে এবং তারপরে তারা আইটেমটি যে ড্রোনটিতে রাখতে চান তা ক্লিক করতে পারেন।

  2. মোবাইল অ্যাপ্লিকেশনগুলির জন্য এটি করে এমন একটি অ্যাপ্লিকেশন লিখুন তারপরে চেষ্টা করুন এবং ওয়েব পৃষ্ঠাটি সেগুলিতে কাজ করার জন্য পান!

  3. আপনার পরামর্শ এবং মন্তব্য দয়া করে।


আপনি কোন ডিভাইসকে টার্গেট করছেন?
মার্কো

22
@ মারকো - এরা সবাই। আমি কাউকে বাদ দিলে এটি ওয়েব নয়।
ফেন্টন

আপনি যদি কিছুতেই jQuery না চান তবে এই github.com/capriza/mobile-touch
oriharel

উত্তর:


101

jQuery UI টাচ পাঞ্চ কেবল এটি সমাধান করে।

এটি jQuery UI এর জন্য একটি টাচ ইভেন্ট সমর্থন। মূলত, এটি কেবল jQuery UI-এ ফিরে স্পর্শ ইভেন্টটিকে তারযুক্ত করে। আইপ্যাড, আইফোন, অ্যান্ড্রয়েড এবং অন্যান্য টাচ-সক্ষম মোবাইল ডিভাইসে পরীক্ষিত। আমি jQuery ইউআই বাছাইযোগ্য ব্যবহার করেছি এবং এটি একটি কবজ মত কাজ করে।

http://touchpunch.furf.com/


4
স্টক অ্যান্ড্রয়েড 4.0.০ ব্রাউজারে কাজ করে না। যদিও এটি মোবাইল ক্রোমে কাজ করে।
টিম্ম্ম্ম

টেনে আনার আগে আমাদের কি দীর্ঘ চাপ আছে? কারণ যখন আমরা এমন উপাদানটিতে পূর্ণ প্রস্থ ব্যবহার করি যা সক্ষম টেনে নিয়ে যায় তখন আমরা নীচে স্ক্রোল করতে চাই এটি স্বয়ংক্রিয়ভাবে উপাদানটি টেনে নিয়ে যায়
ক্যাফিনশটস

4
এটি আপনার এইচটিএমএল ফাইলের মাথাতে, আপনার বিশেষত jquery-ui এর শেষ << স্ক্রিপ্ট> ঘোষণাটি নিশ্চিত করে নিন বা এটি কার্যকর হবে না
কেন

@ ভিচসু এই উত্তরের জন্য আপনাকে অনেক ধন্যবাদ, যা আমার সমস্যাটিকে নিখুঁতভাবে সমাধান করেছে।
ব্র্যাডি ঝু

সত্যিই অ্যান্ড্রয়েড in.০ এ কাজ করছে না .. নাকি আশেপাশে কোন কাজ আছে?
রাশিডঙ্ক

23

টাচ-এ-ড্রপ-এ স্পর্শ ইভেন্টগুলি অনুবাদ করার জন্য একটি নতুন পলিফিল রয়েছে, যেমন এইচটিএমএল 5 ড্রাগ এবং ড্রপটি মোবাইলে ব্যবহারযোগ্য।

Polyfill উপর বের্নার্ডো Castilho প্রবর্তন করেন পোস্টটি

এই পোস্ট থেকে একটি ডেমো এখানে ।

পোস্টটি ফলিফিল ডিজাইনের বিভিন্ন বিবেচনাও উপস্থাপন করে।


7

সেনচা টাচের বিটা সংস্করণটিতে ড্রাগ এবং ড্রপ সমর্থন রয়েছে।

আপনি তাদের ডিএনডি উদাহরণটি উল্লেখ করতে পারেন । এটি কেবল ওয়েবকিট ব্রাউজারগুলিতেই কাজ করে।

কোনও ওয়েব পৃষ্ঠায় সেই যুক্তিটি পুনঃনির্ধারণ করা সম্ভবত কঠিন হতে চলেছে। আমি এটি বুঝতে পারি যে তারা সমস্ত ব্রাউজার প্যানিং অক্ষম করে এবং প্যানিং ইভেন্টগুলিকে পুরোপুরি জাভাস্ক্রিপ্টে প্রয়োগ করে, ড্রাগ এবং ড্রপের সঠিক ব্যাখ্যার অনুমতি দেয়।

আপডেট: মূল উদাহরণের লিঙ্কটি মারা গেছে তবে আমি এই বিকল্পটি খুঁজে পেয়েছি:
https://github.com/kostysh/Drag-Drop-example-for-Sencha-Touch


এটি খুব আকর্ষণীয়, তাই আমি এটি ডাউনলোড করব এবং একটি প্লে করব - অ্যান্ড্রয়েডে পরীক্ষা করা এবং এটি বেশিরভাগ ক্ষেত্রেই কাজ করে, তাই কেবল বিশদটি দেখার প্রয়োজন - ধন্যবাদ!
ফেন্টন

6
ঠিক আছে, আমি সম্ভবত সেই লাইব্রেরিটি বিশেষত ব্যবহার করব না (এটি যখন 200 কিলোমিটারের ওপরে থাকবে তখন) তবে আমি ধারণার মত ধারণাগুলি পেতে এর মধ্যে থাকা ধারণাগুলি ব্যবহার করতে পারি। সাধারণ ধারণাটি হ'ল আপনি নিজের পৃষ্ঠাটিকে স্ক্রিনের আকারের চেয়ে বড় হিসাবে ব্যাখ্যা করতে পারবেন না, যা মোবাইল ব্রাউজারটিকে সোয়াইপ / ড্র্যাগগুলি বাধা না দেওয়ার জন্য বোকা বানাবে!
ফেন্টন

4
সোহনি, আমরা টাচ 1.0 এর জন্য একটি বিল্ডার যুক্ত করছি যা লাইব্রেরির অব্যবহৃত অংশগুলি সরিয়ে দেয়, এটি পায়ের ছাপটি যথেষ্ট পরিমাণে নেমে আসবে। এছাড়াও, গিজিপ করা হয়েছে, সম্পূর্ণ লাইব্রেরি 50-80k।
মাইকেল মুল্লানি

7

আমার উইন্ডোজ ফোন সহ ডেস্কটপ, মোবাইল, ট্যাবলেটে কাজ করে এমন একটি টানা এবং ড্রপ + ঘূর্ণন তৈরি করা দরকার। শেষটি এটিকে আরও জটিল করে তুলেছিল (এমএসপয়েন্টার বনাম স্পর্শ ইভেন্ট)।

সমাধানটি গ্রেট গ্রিনসক গ্রন্থাগার থেকে এসেছে

একই অবজেক্টটিকে টেনে আনে এবং ঘোরানোর উপযোগী করতে হুপসের মধ্য দিয়ে কিছুটা ঝাঁপিয়ে পড়েছিল তবে এটি পুরোপুরি কার্যকর হয়


লাইসেন্সের ধরণ? ফ্রি? আমি সাইটটি চেক আউট করেছি তবে মনে হচ্ছে তারা লাইব্রেরিটি বিক্রি করছে।
শ্যানার এম 13

আমি এই উত্তরটি দিয়ে 6 বছর হয়ে গেছে। আমি নিশ্চিত না যে তারা তাদের লাইসেন্সের ধরনটি পরিবর্তন করেছে কিনা। এটি 2014 এ ফ্রি
ফিরত


মূলত, এটি নিখরচায় সরবরাহ করা হয় যে আপনার পণ্যটি নিখরচায় রয়েছে (তারা এক সময় চার্জের অনুমতি ব্যতীত), অন্যথায়, তাদের সাথে আপনার ব্যবসায়ের লাইসেন্স নিতে হবে।
শ্যানার এম 13

3

আপনি বার বার বার্নার্ডো ক্যাসটিলহোর অনুরূপ টিম রাফেলের ড্রাগ-এন-ড্রপ পলিফিলের চেষ্টা করতে পারেন (@ রেমদেভেকের উত্তর দেখুন)।

সহজভাবে করুন npm install mobile-drag-drop --save(অন্যান্য ইনস্টলেশন পদ্ধতি উপলভ্য যেমন বোর সহ)

তারপরে, স্পর্শ সনাক্তকরণের উপর নির্ভর করে যে কোনও উপাদান ইন্টারফেসটি মোবাইলে কাজ করা উচিত (যেমন একই সময়ে স্ক্রোলিং + টেনে আনার পরিবর্তে কেবলমাত্র একটি উপাদান টেনে নিয়ে যাওয়া)।


1

জ্যাকোরি টাচ পাঞ্চ দুর্দান্ত তবে এটি যা করে তা হ'ল টানতে সক্ষম ডিভের সমস্ত নিয়ন্ত্রণ অক্ষম করে যাতে এটি রোধ করতে আপনার লাইনগুলিকে পরিবর্তন করতে হবে ... (লেখার সময় - লাইন 75)

পরিবর্তন

if (touchHandled || !self._mouseCapture(event.originalEvent.changedTouches[0])){

পড়তে

if (touchHandled || !self._mouseCapture(event.originalEvent.changedTouches[0]) || event.originalEvent.target.localName === 'textarea'
        || event.originalEvent.target.localName === 'input' || event.originalEvent.target.localName === 'button' || event.originalEvent.target.localName === 'li'
        || event.originalEvent.target.localName === 'a'
        || event.originalEvent.target.localName === 'select' || event.originalEvent.target.localName === 'img') {

আপনি 'আনলক' করতে চান এমন প্রতিটি উপাদানের জন্য যতগুলি চান আপনি যোগ করুন

আশা করি যে কাউকে সাহায্য করবে


এটি সুনির্দিষ্টভাবে আমাকে সাহায্য করেছে, আপনাকে ধন্যবাদ। আমি একটি বাছাইযোগ্য চেকলিস্ট তৈরি করছিলাম এবং টাচ বাক্সটি ক্লিক করছিল না কারণ স্পর্শ-পাঞ্চ দ্বারা তৈরি ডিভটি চেকবক্সটি coveringেকে রাখছিল। এটি এটি সমাধান করে এবং এটি কাজ করে। ধন্যবাদ ....
মাইকিস


1

বাছাইযোগ্য জাতীয় গ্রন্থাগার স্পর্শ পর্দার সঙ্গে সামঞ্জস্যপূর্ণ এবং jQuery প্রয়োজন হয় না।

এটি যেভাবে স্পর্শ পর্দা পরিচালনা করে তাতে কোনও আইটেম টেনে আনতে শুরু করতে আপনাকে প্রায় 1 সেকেন্ডের জন্য স্ক্রিনটি স্পর্শ করতে হবে।

এছাড়াও, তারা একটি ভিডিও পরীক্ষা উপস্থাপন করে যা দেখায় যে এই লাইব্রেরিটি JQuery UI বাছাইযোগ্য এর চেয়ে দ্রুত চলছে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.