জাভাস্ক্রিপ্টে পপ আপ উইন্ডোর ভিতরে চার্ট


10

পপ আপ উইন্ডোর ভিতরে কীভাবে একটি চার্ট প্রদর্শন করবেন? আমি লিফলেট জেএস ব্যবহার করছি, যার র‌্যাফেল প্লাগইন http://dynmeth.github.com/RaphaelLayer/ এর জন্য সমর্থন রয়েছে । পপআপ উইন্ডোর ভিতরে কোনও ডিভি তৈরি করা সম্ভব? আমি http://softwarebyjosh.com/raphy-charts/ সম্পর্কে ভাবছিলাম

লিফলেট দিয়ে যদি এটি সম্ভব না হয় তবে আমি কেবল রাফেল মানচিত্র সমাধানে খোলা আছি।

ধন্যবাদ

উত্তর:


1

আমার ধারণা এটি সম্ভব। লিফলেটটির হোম পৃষ্ঠায় আমি এই উদাহরণটি দেখতে পাচ্ছি:

// add a marker in the given location, attach some popup content to it and open the popup
L.marker([51.5, -0.09]).addTo(map)
    .bindPopup('A pretty CSS3 popup. <br> Easily customizable.').openPopup();

সুতরাং আপনি বিষয়বস্তু হিসাবে মার্কআপ যোগ করতে পারেন। উপরের বিআর ট্যাগ দেখুন।

// add a marker in the given location, attach some popup content to it and open the popup
L.marker([51.5, -0.09]).addTo(map)
    .bindPopup('A pretty CSS3 popup. <div class="popup_custom_div"></div> Easily customizable.').openPopup();
//retrieve the div by class name take care if more then one maybe opened
var mydiv = document.getElementsByClassName( 'popup_custom_div' )[0];
mydiv.innerHTML = 'I am here';

2

@ কভিলার উত্তরটি সমাধানের একমাত্র অংশ। আপনি পপআপে চার্টের জন্য ডিভি ট্যাগ রাখতে পারেন, তবে সমস্যাটি তখনই উত্থাপিত হয় কারণ তখন আপনাকে র্যাপি-কার্টস জাভাস্ক্রিপ্ট সম্পাদন করতে ".openPopup ()" ইভেন্টটি শুনতে হবে। আপনি যদি এই ইভেন্টে এটি না করেন, তবে এটি কার্যকর করার পরে এটি ডিওএম ট্যাগটি খুঁজে পাবে না কারণ এটি ডিওমে .োকানো হয়নি। দেখে মনে হচ্ছে লিফলেটটি ইভেন্ট শোনার পক্ষে সমর্থন করে তাই আপনাকে উপরের কোডটিতে এই জাতীয় কিছু যুক্ত করতে হবে:

map.on('popup', function(e) {
    //Run the chart code here like this
    var chart = new Charts.LineChart('chart1');
     chart.add_line({
        data: [[1, 828906, {tooltip: "my special point"}],[2, 566933],[3, 584150],[4,  
                 1072143],[5, 1622455],[6, 2466746],[7, 2427789]]
        });

     chart.draw();
});

তাহলে ওপেনপপআপ () কি অ্যাসিনক্রোনাস? কারণ জাভাস্ক্রিপ্ট ইন্টারপ্রেটার পরের স্টেটমেন্টটি পরবর্তী সময়ে কার্যকর করা হবে না, পরে সময় অনুসারে মৃত্যুদন্ড কার্যকর করা কলব্যাক ব্যতীত। কোনও ইভেন্ট যদি উইন্ডোতে সেট "টাইমআউট লুপ" এর "ডিভ" এর উপস্থিতির জন্য পুলিং চালানো না হয়। ইভেন্ট কলব্যাকটি আরও দ্রুত হবে।
ক্যাভিলা

1

একটি উপায় হ'ল আপনার নির্মাতাদের ক্লিক ইভেন্টগুলি শুনতে এবং ফ্লাইতে চার্ট তৈরি করা। এখানে একটি উদাহরণ: http://jsfiddle.net/6UJQ4/

আমার চারপাশে খেলা শুরু করা অবধি আমার কাছে স্পষ্ট ছিল না যে লিফলেটটির বাইন্ডপপ স্ট্রিং বা একটি ডম নোড নিতে পারে take উপরের উদাহরণটি একটি ডোম নোড তৈরি করে, এটি বিন্ডপপআপে দেয় তারপর চার্ট তৈরি করে।


বহুভুজ ইভেন্টগুলির জন্য এটি কি সম্ভব? যখন কোনও বহুভুজ ক্লিক করা হয়, তখন একটি অনুরূপ পপআপ প্রদর্শিত হবে?
againstflow

হ্যাঁ, সম্ভব হওয়া উচিত। আমার উদাহরণটি চার্টের মান হিসাবে 50 হিসাবে ব্যবহার করা হার্ডকোডযুক্ত তবে আপনি চার্ট তৈরির ফাংশনের ভিতরে আপনার পছন্দ মতো কিছু করতে পারেন।
ডেরেক সুইংলে

আপনি দয়া করে মার্কার্সের সাথে এই জাতীয় jsfiddle এ বহুভুজ বা জিওজসন ডেটা দিয়ে উদাহরণ লিখতে পারেন? আমি অনেক প্রশংসা করব।
ফ্লো
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.