আপনি যখন কোনও টেক্সটরিয়ার ভিতরে ক্লিক করেন, তখন এটির কীভাবে এটি তৈরি করতে পারি?
এবং অবশেষে যখন আপনি আবার ক্লিক করেন, এটি নির্বাচন থেকে মুক্ত করতে।
আপনি যখন কোনও টেক্সটরিয়ার ভিতরে ক্লিক করেন, তখন এটির কীভাবে এটি তৈরি করতে পারি?
এবং অবশেষে যখন আপনি আবার ক্লিক করেন, এটি নির্বাচন থেকে মুক্ত করতে।
উত্তর:
ব্যবহারকারী যখন তাদের মাউস ব্যবহার করে ক্যারেটটি সরানোর চেষ্টা করবেন তখন পুরো পাঠ্যটি নির্বাচিত হয়ে গেলে ব্যবহারকারীকে বিরক্ত হওয়া থেকে বিরত রাখতে আপনার focus
ইভেন্টটি নয়, click
ইভেন্টটি ব্যবহার করে এটি করা উচিত । নীচেরগুলি কাজটি করবে এবং Chrome এর এমন একটি সমস্যা ঘিরে কাজ করবে যা সহজতম সংস্করণটিকে (যেমন কেবল ইভেন্ট হ্যান্ডলারে টেক্সারিয়ার select()
পদ্ধতিটিকে কল করা focus
) কাজ করা থেকে বিরত রাখে।
জেএসফিডাল: http://jsfiddle.net/NM62A/
কোড:
<textarea id="foo">Some text</textarea>
<script type="text/javascript">
var textBox = document.getElementById("foo");
textBox.onfocus = function() {
textBox.select();
// Work around Chrome's little problem
textBox.onmouseup = function() {
// Prevent further mouseup intervention
textBox.onmouseup = null;
return false;
};
};
</script>
jQuery সংস্করণ:
$("#foo").focus(function() {
var $this = $(this);
$this.select();
// Work around Chrome's little problem
$this.mouseup(function() {
// Prevent further mouseup intervention
$this.unbind("mouseup");
return false;
});
});
tab
টেক্সারিয়ায় প্রবেশ করেন তবে ব্যর্থ হন - আপনার অন্যান্য সমাধান উভয় ক্ষেত্রেই কাজ করে :)
$("#foo").mouseup(function() {
$("#foo").unbind("mouseup");
return false;
});
আপনি this
কেবল পাঠ্যবক্সটি ব্যবহার না করে রেফার করতে হবে পুরো পথ দিয়ে .. এবং এটি কাজ করবে ..
ট্যাব এবং ক্রোম সমস্যার সমাধান এবং নতুন jquery উপায় সহ আরও ভাল উপায়
$("#element").on("focus keyup", function(e){
var keycode = e.keyCode ? e.keyCode : e.which ? e.which : e.charCode;
if(keycode === 9 || !keycode){
// Hacemos select
var $this = $(this);
$this.select();
// Para Chrome's que da problema
$this.on("mouseup", function() {
// Unbindeamos el mouseup
$this.off("mouseup");
return false;
});
}
});
আমি এটি ব্যবহার করে শেষ করেছি:
$('.selectAll').toggle(function() {
$(this).select();
}, function() {
$(this).unselect();
});
readonly
তখন এট্রিবিউট যুক্ত করে এটি কেবল পঠন করতে চান ।
সামান্য সংক্ষিপ্ত jQuery সংস্করণ:
$('your-element').focus(function(e) {
e.target.select();
jQuery(e.target).one('mouseup', function(e) {
e.preventDefault();
});
});
এটি ক্রোম কর্নারের কেসটি সঠিকভাবে পরিচালনা করে। উদাহরণের জন্য http://jsfiddle.net/Ztyx/XMkwm/ দেখুন ।
কোনও উপাদানটিতে পাঠ্য নির্বাচন করা (আপনার মাউসের সাহায্যে হাইলাইট করার অনুরূপ)
:)
এই পোস্টে স্বীকৃত উত্তরটি ব্যবহার করে আপনি ফাংশনটিকে এভাবে কল করতে পারেন:
$(function() {
$('#textareaId').click(function() {
SelectText('#textareaId');
});
});
$(this).select()
, আমি এটি ব্যবহার করব কারণ এটির কম কোড রয়েছে :)