জেসিই / টিনিএমসিই - বৈধ ও অবৈধ এইচটিএমএল ঠিক করার চেষ্টা করে


9

আমরা যে সমস্ত জুমলা সম্পাদক ব্যবহার করেছি তার মধ্যে জেসিই আমাদের উদ্দেশ্য এবং ক্লায়েন্টদের সবচেয়ে উপযুক্ত করেছে। তবে সম্পাদকটির সাথে কয়েকটি সমস্যা রয়েছে যা যখন আমরা কিছু কোড করি তখন সমস্যা দেখা দিতে পারে, তারপরে এটি উইসইভিগে টগলড হয় এবং সম্পাদক আমাদের পুরোপুরি বৈধ এইচটিএমএলকে 'ঠিক' করার চেষ্টা করে।

আপনি প্রশ্ন জিজ্ঞাসা করার আগে - হ্যাঁ, আমরা জেসিই সমস্ত উপাদানগুলিকে সীমাবদ্ধ রাখতে পছন্দ করার অনুমতি দেওয়ার জন্য এটি সেট করেছি এবং না, এটি এইচটিএমএলকে বৈধতা / পরিষ্কার করার জন্য সেট করা হয়নি। আমাদের কাছে কেবলমাত্র বিধিনিষেধগুলি হ'ল এডিটরে কন্টেন্ট আটকানোর জন্য।

একটি প্রদর্শনী:

<a href="#"></a>

এটি টগলিং সম্পাদক এবং পিছনে অদৃশ্য হয়ে যাবে। সঙ্গে প্রতিস্থাপিত:

<p>&nbsp;</p>

প্রদর্শন বি:

<a id="#nameofanchor"></a>

এতে পরিবর্তনগুলি:

<p>&nbsp;</p>

প্রদর্শন সি:

<div><a id="#nameofanchor"></a></div>

এতে পরিবর্তনগুলি:

<div>&nbsp;</div>

প্রদর্শন ডি:

<a id="hello" class="link">Hello</a>

এতে পরিবর্তনগুলি:

<p><a id="hello" class="link"></a>Hello</p>

প্রদর্শনী ই:

<a href="#">
<div>
<h2>Our Work</h2>
</div>
</a>

এতে পরিবর্তনগুলি:

<p><a href="#"></a></p>
<div>
<h2><a href="#">Our Work</a></h2>
</div>
<p>&nbsp;</p>

এখন, আমরা আমাদের অ্যাঙ্কারের জন্য নামের পরিবর্তে আইডি ব্যবহার করতে চাই, কারণ এটি HTML5 এর অধীনে বৈধ, যদিও প্রযুক্তিগতভাবে নামটি নেই। এছাড়াও, কোন মহাবিশ্বের আইডিতে কোনও লিঙ্কের একটি অবৈধ দায়িত্ব রয়েছে?

এছাড়াও, এখন যেহেতু লিংকগুলির সাথে একটি ডিভটি পুরোপুরি বৈধ করার জন্য, জেসিই কেন সেগুলিও ছিনিয়ে নেবে?

এটি কি কেবলমাত্র একটি সেটিং যা আমি মিস করছি? আমি সম্পাদককে কীভাবে ব্যবহার করতে পারি সে সম্পর্কে কারও কি অন্তর্দৃষ্টি আছে যাতে আমাদের সম্পাদকের প্রয়োজন অনুসারে কোড করতে পারি তবে আমাদের ক্লায়েন্টরা কেবল উইসইউইগে সঞ্চয় করে এটি নষ্ট করতে পারে না?

সম্পাদনা: আমি এটি ক্রোম, ফায়ারফক্স এবং সাফারিতে পরীক্ষা করেছি। ব্রাউজারের সাথে এটি করার কিছু মনে করবেন না।

সম্পাদনা করুন: আমি এটি ধারক সেটিংস দিয়ে পরীক্ষা করেছি। এন্ট্রি এবং ডিভ কনটেইনার এবং ডিভের উপর অনুচ্ছেদের কনটেইনার এবং অনুচ্ছেদ উভয়ই এর কারণ হতে পারে। অন্য দুটি, প্রবেশের জন্য কোনও ধারক এবং অনুচ্ছেদ, প্রবেশের কোনও ধারক এবং লাইন ব্রেক নেই, এটির কারণ হবে না। সমস্যাটি হ'ল - আমার প্রথম সেটিংটি দরকার! সন্দেহের সুবিধাটি ক্লায়েন্টদের দেওয়া যতটা দুর্দান্ত হবে ততই তাদের নির্দেশাবলী অনুসরণ করতে এবং তাদের পাঠ্যে অনুচ্ছেদে বিন্যাস যুক্ত করার জন্য তাদের বিশ্বাস করা যায় না।

নিশ্চিত হয়েছে: টিনিএমসিইএর সাথেও এটি ঘটে।

সুতরাং - আমরা জানি যে এর কারণ কী - প্যারাগ্রাফ ধারক সেটিং - এখন কীভাবে আমরা এই সেটিংটি বাঁচিয়ে রেখে এর আশেপাশে যাব?


1
খুশী এটা শুধু আমি না।
ক্রেগ

আমাদের পূর্ববর্তী আলোচনার পরে এবং এই উপসংহারটি যে জেসিই উপাদানটি মোড়ানোর বৈশিষ্ট্য থেকে আসে তা নিশ্চিত হওয়ার পরেও আমি নিশ্চিত নই যে এটি আসলে উদ্বেগের বিষয়। আপনি যদি নিজের গ্রাহককে সম্পাদক অবস্থার উপরে টগল করে উপরের মতো এইচটিএমএল স্নিপেট যোগ করতে সক্ষম হতে বিশ্বাস করেন তবে আপনি কেন তাদের বিশ্বাস করবেন না যে তারা উপযুক্ত বিষয়বস্তু <p> ট্যাগ দিয়ে মোড়ানো হবে?
এফফ্রেইন

আমাদের ক্লায়েন্টরা এইচটিএমএল যোগ করে না। আমরা এইচটিএমএল লিখি, তারা সম্পাদক দিকটি ব্যবহার করে - সম্পাদক টোগল করার সাথে সাথে এটি আমাদের পুরোপুরি বৈধ এইচটিএমএলকে নষ্ট করে দেয়।
ফয়ে

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

উত্তর:


7

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

http://www.nonumber.nl/extensions/sourcerer


ধন্যবাদ. এটি নিখুঁত, আমরা ইতিমধ্যে আমাদের স্টাফগুলিতে নাম্বার ইনস্টল করেছি কারণ এটি দুর্দান্ত, আমি জানতাম না এটি ছিল had এটি নিখুঁত।
ফয়ে

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

Aaaand তবুও আমাকে করতে হবে, বা জেসিই পুরোপুরি বৈধ এইচটিএমএলকে সরিয়ে দেয়।
ফাই

2

জেসিইর জন্য কিছু গোপন সেটিংস রয়েছে। আমি জানি যে নিম্নোক্ত সেটিংসটি &nbsp;খালি ডিভগুলিতে যুক্ত হওয়া বন্ধ করে দেওয়া হতে পারে, সম্ভবত ভাসমান সাফ করার জন্য ব্যবহৃত হয়, যা রেন্ডার করার সাথে সাথে লাইন-উচ্চতার সমস্যার কারণ হয়:

In the Editor Global Configuration, add:
remove_div_padding:1 
to Custom Configuration Variables. 

আমি আশা করব এমন আরও অনেকগুলি রয়েছে যা সম্পাদকের কোনও দিক নিয়ন্ত্রণ করতে পারে।


1

আমি মনে করি এটি অবশ্যই টাইপোগ্রাফি সেটিংসে হবে: প্রোফাইল -> সম্পাদক পরামিতি -> টাইপোগ্রাফি । এটি এখনও আপনার এইচটিএমএল-তে কোনও পরিবর্তন প্রযোজ্য কিনা তা দেখার জন্য এন্টার এ কনটেইনার উপাদান এবং প্রবেশ কী নো কনটেনার এবং লাইনব্রিক সেট করার চেষ্টা করুন।

এছাড়াও মনে রাখবেন যে এইচটিএমএল বৈধকরণ সেটিংসে প্রতিটি সম্পাদক প্রোফাইলের জন্য সেটিংস রয়েছে এবং জুমলা ব্যবহারকারী গোষ্ঠী দ্বারা নির্ধারিত গ্লোবাল কনফিগারেশন পৃষ্ঠাতে একটি বৈশ্বিক ফিল্টার সরবরাহ করে। প্রতিটি ব্যবহারকারী গোষ্ঠীর জন্য সেখানে কোনও সেটিংস নেই তা নিশ্চিত করুন।


হ্যাঁ, আমি সমস্ত সম্পাদক প্রোফাইল ইত্যাদিতে ছিলাম etc. ধারক পরিবর্তন করা এটিকে সমাধান করতে পারে - তবে এটি অন্য সমস্যাটি ঘটবে, সমান সমস্যাযুক্ত। যদি কোনও ক্লায়েন্ট পাঠ্য সামগ্রী যুক্ত করতে পারেন যা অনুচ্ছেদে ট্যাগগুলিতে আবৃত নয়, তবে তাদের পাঠ্যের বিন্যাসটি আলাদা হবে। আমরা তাও চাই না। আমি এটি পরীক্ষা করে দেখব যে এটি অ্যাঙ্কারের সাথে একই সমস্যা সৃষ্টি করে কিনা, তবে অনুচ্ছেদে ট্যাগগুলি নিজেরাই যুক্ত করে দিচ্ছে, কোর্সের জন্য এটি এক রকমের সমান।
ফাই

হ্যাঁ এটি কনটেইনার সেটিংস যা এটি করে - তবে আমি যেমন বলেছি যে, আমাদের ক্লায়েন্টদের পেস্ট করতে সক্ষম না হওয়া এবং তাদের সামগ্রীতে একটি স্বয়ংক্রিয় অনুচ্ছেদে ট্যাগ মোড়ানো না হওয়া এটি একটি বড় সমস্যা।
ফয়ে

আমি মনে করি এটি ঘটছে কারণ আপনার কোড উদাহরণগুলিতে লাইন ব্রেক রয়েছে যা অনুগ্রহগুলি তৈরি করতে জেসিইর জন্য এক ধরণের "বিধি"। এটি তৈরি করার জন্য এই জাতীয় মানদণ্ড হওয়া উচিত। আপনার গ্রাহক কি সম্পাদক হিসাবে এই জাতীয় এইচটিএমএল স্নিপেটগুলি আটকানো যাচ্ছে?
এফফ্রেইন

আমাদের ক্লায়েন্টরা এইচটিএমএল ব্যবহার করবে না, তবে তারা এখনও যা করে তার পিছনে আমরা এইচটিএমএল দিয়ে কোড করি। আমরা তাদের জন্য সরাসরি কন্টেন্ট আটকানোর / টাইপ করার ক্ষেত্রগুলি তৈরি করি। এছাড়াও - যদি আপনি উপরে বর্ণিত পরিবর্তে এক লাইনে এইচটিএমএল টাইপ করতে চান তবে আমি এটিও চেষ্টা করেছি। আমি ঠিক একই ফলাফল পেতে।
ফয়ে

0

এই আচরণটি জেসিই-তে অনন্য নয়। টিনিএমসিই একইভাবে আচরণ করে। এই আচরণটি টিনিএমসিই-র মধ্যে সীমাবদ্ধ নয়, এটি ব্রাউজারের ডিওএম আচরণ হতে পারে।

জেসিই আসলে কিছু খালি ট্যাগ রাখার চেষ্টা করার সমস্যায় চলে যায়, নিযুক্ত পদ্ধতিটি একটি স্থান দিয়ে প্যাড করা।

https://github.com/widgetfactory/jce-editor/blob/master/editor/tiny_mce/plugins/cleanup/editor_plugin.js


মিথ্যা বলছে না, এর অর্থ কী তা আমার কোনও ধারণা নেই। আপনি কি আরও কিছুটা ভাঙতে পারেন? আমি কি এই লিঙ্কে তাকান? একটি স্পেস সহ প্যাড বলতে কী বোঝ? উপরের কোড উদাহরণগুলিতে একটি অবিশ্বাস্য স্থান যুক্ত করা শেষ ফলাফল পরিবর্তন করে না, আমি এটি পুরোপুরি পরীক্ষা করেছি tested
ফাই

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