Сделайте код условным с помощью jquery

#jquery #ajax #wordpress #url #hash

#jquery #ajax #wordpress #url #хэш

Вопрос:

Хорошо, я работаю над новой версией моего веб-сайта: 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:

Это должно быть так:

 $(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");
    }
});
  

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

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

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

Комментарии:

1. О, здорово! Только одна небольшая проблема, он все еще загружает проектную панель, когда я использую themes.visualise.ca/visualise /# url и это не должно.

2. themes.visualise.ca/visualise /# / (последняя косая черта вырезается этим форумом… Нет пробела)

3. Какие символы вы можете использовать? только цифры и буквы?

4. Это только цифры, буквы и тире (-), потому что они созданы WordPress с использованием slug.

5. Теперь, если я попробую прямой URL, он больше не загружает проектную панель themes.visualise.ca/visualise/#josie