هل هناك طريقة لإجبار نافذة جديدة على "onclick" لفتح في علامة تبويب؟
-
29-09-2019 - |
سؤال
ذات الصلة ولكن نائمة: JavaScript لفتح عنوان URL ضمن علامة تبويب جديدة وعدد من الآخرين ...
لدي عميل يصر على أن رابط معين يحتاج إلى فتح في علامة تبويب جديدة ، بدلاً من نافذة. يتم إنشاؤه بواسطة حدث "OnClick" لزر تقديم النموذج ، يسمى وظيفة jQuery في وثيقة PHP التي تبدو مثل هذا:
function newTabLink($element,$url) {
?><script language="JavaScript" type="text/javascript">//<![CDATA[
jQuery(document).ready( function() {
jQuery('<?php echo $element; ?>').click( function() {
window.open( "<?php echo $url; ?>",'_blank' );
} );
} );
//]]></script><?php
}
لديّ أيضًا إعلان CSS في ورقة الأنماط التي تحاول إجبار Windows على علامات تبويب بدلاً من النوافذ الجديدة:
* { target-new: tab !important; }
CSS الهدف الجديد يبدو أن الخاصية تعمل في IE9 ، مما يجبر المنبثقة على علامة تبويب. FF و Chrome/Safari على حد سواء الافتراضي للتصفح ، حتى بدون مجموعة الممتلكات هذه. ولكن كيف يمكنني إجبار IE8 و 7 على فتح هذا الرابط المحدد في علامة تبويب؟
أيه أفكار؟
المحلول
لا يمكنك القيام بذلك بشكل موثوق. كما لاحظت ، يمكن تكوين متصفحات Firefox ومتصفحات WebKit لفتح Windows الجديد ولكن المستخدم يريد ذلك. أنا أمل يمكن تكوين IE9 لتجاوز سلوك هذا "النمط". ((تعديل - يبدو أن مسودات CSS3 - آمل شخصيا أن يموت في اللجنة.)