OK finally I fixed the issue. Basically I created a dynamic element and placed content of my loader into that div and used it for blocking.
my upldated myBlock function as follows:
myBlock = function (surroundingControl, message) {
console.log('blocking');
if (message)
$("#loader h4").text(message);
else
$("#loader h4").text('Loading...');
var messageContent = document.createElement('div');
if ($('#loader') !== undefined)
$(messageContent).html($('#loader').html());
else
$(messageContent).html("Loading....");
if (surroundingControl)
surroundingControl.block({ message: messageContent, baseZ: 1200 });
else {
$.blockUI.defaults.message = messageContent;
$.blockUI.defaults.baseZ = 1200;
$.blockUI.apply();
}
};