// я должен использовать "this.href"?
Нет, используйте селектор jquery - если вы собираетесь много использовать $ (this), поместите его в переменную в начале, чтобы у вас не было лишних затрат на создание объекта jquery каждый раз (вы делаете это дважды, поэтому вы создаете объект jquery дважды).
// имеет ли значение имя окна?
Если вы хотите что-то сделать с окном позже, например закрыть его или изменить его местоположение, вам понадобится имя. Это просто ручка к окну.
// это вообще необходимо?
Это просто гарантирует, что вы можете делать то, что собираетесь сделать, - это проверка функций, чтобы убедиться, что вы не генерируете ошибку, когда метод focus () недоступен.
// любые другие условия, которые я должен проверить вместо этого?
Нет - проверьте функцию, которую вы будете вызывать (вы вызываете ее, когда фокусируете всплывающее окно).
// это должно быть выше $ popup.focus ()?
Нет. Лучше оставить это до последнего, поскольку это - то, где другой разработчик будет искать это. Сначала сделайте все, что вы хотите, а затем вставьте это, чтобы событие не всплывало.
Наконец, что с префиксом $ в именах переменных? Возможно, вы захотите сохранить эту практику для PHP, поскольку $ теперь является дескриптором jquery.
$(document).ready( function() {
$("a[target='popup']").click( function(event) {
var myObject = $(this);
var href = myObject.attr("href");
var name = myObject.attr("target");
var config = "width=590, height=590, top=20, left=60, scrollbars=1";
var popup = window.open(href, name, config);
if ( window.focus ) {
popup.focus();
}
event.preventDefault();
});
});