Thursday, 5 December 2013

jQuery Interview Question and Answer - Part-4

Q46. What is the difference between event.PreventDefault and "return false"?

Ans: e.preventDefault() will prevent the default event from occurring, e.stopPropagation() will prevent the event from bubbling up and return false will do both.

Q47. What is the difference between event.stopPropagation and event.stopImmediatePropagation?


Ans: event.stopPropagation() allows other handlers on the same element to be executed, while event.stopImmediatePropagation() prevents every event from running. For example, see below jQuery code block.

Code:
$("p").click(function(event){
  event.stopImmediatePropagation();
});
$("p").click(function(event){
  // This function won't be executed
  $(this).css("background-color", "#f00");
}); 


If event.stopPropagation was used in previous example, then the next click event on p element which changes the css will fire, but in case event.stopImmediatePropagation(), the next p click event will not fire.

Q48. How to check if number is numeric while using jQuery 1.7+?

Ans: Using "isNumeric()" function which was introduced with jQuery 1.7.

Q49. How to check data type of any variable in jQuery?

Ans: Using $.type(Object) which returns the built-in JavaScript type for the object.

Q50. How do you attach a event to element which should be executed only once?

Ans: Using jQuery one() method. This attaches a handler to an event for the element. The handler is executed at most once per element. In simple terms, the attached function will be called only once.

Code:
$(document).ready(function() {
    $("#btnDummy").one("click", function() {
        alert("This will be displayed only once.");
    });
});


Q51. Can you include multiple version of jQuery? If yes, then how they are executed?


Ans: Yes. Multiple versions of jQuery can be included in same page.

Q52. In what situation you would use multiple version of jQuery and how would you include them?


Ans: Well, it is quite possible that the jQuery plugins which are used are dependent on older version but for your own jQuery code, you would like to use newer version. So because of this dependency, multiple version of jQuery may required sometimes on single page.

Below code shows how to include multiple version of jQuery.


Code:
<script type='text/javascript' src='js/jquery_1.9.1.min.js'></script>
<script type='text/javascript'>
 var $jq = jQuery.noConflict();
</script>
<script type='text/javascript' src='js/jquery_1.7.2.min.js'></script>


By this way, for your own jQuery code use "$jq", instead of "$" as "$jq" refers to jQuery 1.9.1, where "$" refers to 1.7.2.

Q53. Is it possible to hold or delay document.ready execution for sometime?


Ans: Yes, its possible. With Release of jQuery 1.6, a new method "jQuery.holdReady(hold)" was introduced. This method allows to delay the execution of document.ready() event. document.ready() event is called as soon as your DOM is ready but sometimes there is a situation when you want to load additional JavaScript or some plugins which you have referenced.

Code:
$.holdReady(true);
$.getScript("myplugin.js", function() {  
$.holdReady(false);
});

Q54. What is chaining in jQuery?

Ans: Chaining is one of the most powerful feature of jQuery. In jQuery, Chaining means to connect multiple functions, events on selectors. It makes your code short and easy to manage and it gives better performance. The chain starts from left to right. So left most will be called first and so on.

Code:
$(document).ready(function(){
    $('#dvContent').addClass('dummy');
    $('#dvContent').css('color', 'red');
    $('#dvContent').fadeIn('slow');});​

The above jQuery code sample can be re-written using chaining. See below.

Code:
$(document).ready(function(){
    $('#dvContent').addClass('dummy')
          .css('color', 'red')
          .fadeIn('slow');   
});​

Not only functions or methods, chaining also works with events in jQuery.

Q55. How does caching helps and how to use caching in jQuery?

Ans: Caching is an area which can give you awesome performance, if used properly and at the right place. While using jQuery, you should also think about caching. For example, if you are using any element in jQuery more than one time, then you must cache it. See below code.

Code:
$("#myID").css("color", "red");
//Doing some other stuff......
$("#myID").text("Error occurred!");​

Now in above jQuery code, the element with #myID is used twice but without caching. So both the times jQuery had to traverse through DOM and get the element. But if you have saved this in a variable then you just need to reference the variable. So the better way would be,


Code:
var $myElement = $("#myID").css("color", "red");
//Doing some other stuff......
$myElement.text("Error occurred!");;​
  
So now in this case, jQuery won't need to traverse through the whole DOM tree when it is used second time. So in jQuery, Caching is like saving the jQuery selector in a variable. And using the variable reference when required instead of searching through DOM again.

Q56. You get "jquery is not defined" or "$ is not defined" error. What could be the reason?


Ans: There could be many reasons for this.

You have forgot to include the reference of jQuery library and trying to access jQuery.
You have include the reference of the jQuery file, but it is after your jQuery code.
The order of the scripts is not correct. For example, if you are using any jQuery plugin and you have placed the reference of the plugin js before the jQuery library then you will face this error.

Q57. How to write browser specific code using jQuery?


Ans: Using jQuery.browser property, we can write browser specific code. This property contains flags for the useragent, read from navigator.userAgent. This property was removed in jQuery 1.9.

Q58. Can we use jQuery to make ajax request?

Ans: Yes. jQuery can be used for making ajax request.

Q59. What are various methods to make ajax request in jQuery?


Ans: Using below jQuery methods, you can make ajax calls.

load() : Load a piece of html into a container DOM
$.getJSON(): Load JSON with GET method.
$.getScript(): Load a JavaScript file.
$.get(): Use to make a GET call and play extensively with the response.
$.post(): Use to make a POST call and don't want to load the response to some container DOM.
$.ajax(): Use this to do something on XHR failures, or to specify ajax options (e.g. cache: true) on the fly.

Q60. Is there any advantage of using $.ajax() for ajax call against $.get() or $.post()?

Ans: By using jQuery post()/ jQuery get(), you always trust the response from the server and you believe it is going to be successful all the time. Well, it is certainly not a good idea to trust the response. As there can be n number of reason which may lead to failure of response.

Where jQuery.ajax() is jQuery's low-level AJAX implementation. $.get and $.post are higher-level abstractions that are often easier to understand and use, but don't offer as much functionality (such as error callbacks).




PREVIOUS                                                                                                                                 NEXT

5 comments:

  1. سم الله الرحمن الرحيم
    فصل الصيف واحد من امتع الفصول في السنه خاصة في المدن الساحلية والمسابح الخاصه والعامه الكثير من الناس ان لم يكون جميعا يذهب الي المسابح والشواطئ للاستمتاع بالسباحه والميه والهروب من حر الصيف لذلك يجب تنظيف المسابح بشكل دوري حفاظا علي الزائرين
    حيث ان هناك بعد الظواهر الخاطئة التي يفعلها الزائرين في المسبح مثل التبول مما يضر به ويخلق الكثير من البكتيريا الضاره داخل المسبح ناهيك عن ذلك وجود بعض
    الشعيرات التى تسقط من الاشخاص داخل الحمام لذلك في هذا المقال سوف نشرح كيفيه تنظيف المسابح للحفاظ عليها زعلي الزائرين والمترددين عليهشركة تنظيف مسابح بالرياض
    1 تحديد اماكن التلوث
    هناك العديد من الأسباب لظهور التلوث في المسابح، تحديد التلوث هو أول خطوة للقضاء عليه، عادة يتم تحديد السبب بناء على لون وشكل البقعة، والتي غالباً ما تكون مزيج من لونين معاً كالأخضر والنبي، الأحمر والأزرق، الأحمر الوردي، البني
    2 تنقسم الملوثات الي قسمين رئيسيين
    الاول : هو الملوث العضوىافضل شركة تنظيف مسابح بالرياض
    وهو الذي ينشاء من فضلات الانسان والحيوانات داخل المسبح وايضا ورقات الشجر التى تتساقط داخل المسبح مما يجعله يحتوى علي الكثير من مسببات الأمراض ولكن طريقه تنظيف المسبح من الملوث العضوى اسهل بكثير
    من الملوث المعدنى حيث ان عند اضافه الكلور فقط علي أماكن الملوث العضوى تبدا البقع بالاختفاء عكس الملوث المعدنى الذى لا يتاثر بالكلور
    ثانيا : الملوث المعدنى
    هو الشق الثانى من الملوثات وينشاء هذا النوع من المعادن القريبة من المسبح مثل صدأ الحديد وتفاعل المعادن الاخر مع الماء وهذا النوع صعب جدا في تنظيفه حيث يحتاج الي متخصص كي يتمكن من إزالتها كيميائيا .
    3 كيف يُمكن علاج البقع العضويه
    نقوم اولا بنزع المسبب للبقع من المسبح مثل انتزاع اوراق الشجر خارج المسبح از الطحالب الموجوده داخل المسبح التي سقطت في المياه وغرقت في القاع، لذلك إزالتها أهم جزء من العلاج، لو تم اكتشافها في البداية ستكون إزالتها سهلة، لكن لو تركتها مدة طويلة أو لم تقوم سريعا بتنظيفها فور حدوثها قد يتغير لون المسبح بالكامل،
    بالتالي لن يكون سهل إزالتها. يجب مراقبه جميع الاشجار والزهور المجوده بجانب المسبح لتقوم بإزالة أي أوراق أو زخور تسقط فيه قبل أن تتحلل. اغسل حوض السباحة بمادة كيميائيه
    ثم بعد هذه الخطوه يجب ان تتم الخطوه الاهم في اي عمليه تنظيف وهي تفريغ المسبح كاملا من الماء الموجود فيهً كليا لكى نتمكن من معالجة الحوائط والقاع كما نُريد،
    خاصة لو كانت البقع قديمة واصبح ليس سهلا إزالتها، في هذه الحالة لابد من استخدام مادة حامضية للتخلص من البقع أو اي تغير لون المسبح في الحوض،
    لو كان الجزء الداخلي منه مصنوع من الجبس فيجب إزالة طبقة رقيقة جداً من الجبس لاستعادة لونه الناصع مرة أخرى، بشكل عام لن تُضطر
    لتكرار هذه العملية إلا كل اربع سنوات، لو كنت تُحافظ على نظافة مسبحك باستمرار. استخدم منظف إنزيمي المنظفات الإنزيمية تُساعد على التخلص من البقع العضوية بسهولة، يُمكنك استخدام منظفات تُجارية ذات قاعدة إنزيمية، أو حتى استخدم الخميرة لو لم تستطع الحصول على
    منظف مخصص للمسابح، المنظفات الإنزيمية بشكل عام تُعتبر الأفضل في هذه الحالة لأنها ليست مواد كيميائيه قويه فتضر بالمسبح من حيث الحوائط والارض، إضافة إلى قدرتها على التخلص من
    الدهون بالتالي تجعل إزالة البقع أسهل. أضف كمية كبيرة من الكلور كما ذكرنا سابقاً المواد العضوية يسهل التخلص من باستخدام الكلور كما ذكرنا انه الاقوى في تنظيف وتنقيه مياة المسابح
    من اي ملوث عضوى ولا تنسي اعطاء التعليمات للزائرين بعدم استخدام الاساليب الغير اداميه من تبول في الماء وعدم الاستحمام قبل النزول الي المسبح فيجب علي كل زائر الاعتناء
    بالنظافه الشخصيه له قبل النزول الي المسبح فهاذا من أهم طرق الحفاظ علي مياة المسبح لان جسم الانسان قد يكون حاملا لاي ميكروب فيجب الاعتناء بالنظافه قبل النزول
    تمتلك شركتنا شركه زين لتنظيف المسابح بالرياض احدث وافضل الاساليب لتنظيف المسابح حيث نقوم بتفريغ المسبح من الماء كاملا ثم تنظيف البقع العضويه والمعدنيه باحدث الطرق واقوى المعدات
    ثم التنظيف بالمواد الكيميائيه التى لا تؤثرا نهائيا علي جدران المسبح ولا الارضيه لذلك نحن نمتلك خبره واسعه في هذا المجال مما يجعل عملنا هو من يتحدث عنا
    حفظكم الله جميعا من كل شر ووفقنا دائما الي ارضائكم وسعادتكم








    ReplyDelete
  2. تقدم شركة الحورس خدمات متميزة متنوعة فى مجال مكافحة الحشرات ورش المبيدات بافضل الاجهزة الحديثة و باقوى المعدات المتواجدة فى الاسواق كما تمتلك شركتنا طاقم عمال مميزون فى القضاء على جميع أنواع الحشرات الزاحفة و القوارض التى تسبب مخاطر كبيرة عند تواجدها بالمنزل لذل فيجب عليكم عملائنا الكرام الاستعانة بشركتنا لكى يتم التخلص من الحشرات و اضرارها المتنوعة
    شركة مكافحة النمل الابيض بمحايل
    شركة رش مبيدات بالطائف
    شركة رش مبيدات بالقصيم

    ReplyDelete