Сделайте код условным jquery - PullRequest
0 голосов
/ 04 мая 2011

ОК. Я работаю над новой версией моего веб-сайта: http://themes.visualise.ca/visualise/

Когда вы выбираете проект, нажимая на изображение, он динамически загружает запрошенную страницу проекта WordPress на существующей странице и изменяетURL, чтобы включить хеш, чтобы я получил: http://themes.visualise.ca/visualise/#project

И если я даю этот прямой URL-адрес людям, Wordpress автоматически загружает страницу проекта, как если бы пользователь щелкнул изображение на странице.

Все так, как я хочу, за исключением одного, мой код заставляет страницу проекта ("#board") загружаться все время, даже если в URL нет хеша #project, поэтому я хотел бы сделать код условным.

$(window).load(function(e){
    $.ajaxSetup({cache:false});
    var post_slug = window.location.hash.substring(1);
    $("#board").load("http://themes.visualise.ca/visualise/ajax/",{slug:post_slug});
    $("#board").delay(1500).slideDown("slow");
});

http://url, http://url/, http://url/#, http://url/#/ не должны загружать только плату проекта http://url/#project или http://url/#whatever должен

Но я не знаю как, так как я все еще плохо знаком с jQuery и программированием в целом.

1 Ответ

1 голос
/ 04 мая 2011

Должно быть так:

$(window).load(function(e){
    $.ajaxSetup({cache:false});
    var post_slug = window.location.hash.substring(1);
    if(/^[a-zA-z0-9\-_]+$/.test(post_slug)){ //This conditions loading
       $("#board").load("http://themes.visualise.ca/visualise/ajax/",{slug:post_slug});
       $("#board").delay(1500).slideDown("slow");
    }
});

Мы спрашиваем, есть ли строковый хеш.

РЕДАКТИРОВАТЬ : я обновил условие для использованиярегулярное выражение для удовлетворения потребностей, которые вы недавно прокомментировали

Надеюсь, это поможет

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...