@Brotherhood

Как вызывать функцию для фиксации контейнера(ов)?

Это мой первый вопрос на сервисе, не IT-специалист, а любитель. За сим прошу не судить строго ; )
В интернете распространено содержание одной статьи, она встречается на китайском и даже на русском! sic!
В ней говорится о методе фиксации контейнера при помощи обращения к скрипту Jquery и CSS.
Обращение имеет вид: $(".sidebar").autofix_anything();
и применимо к контейнеру:
<div class="wrapper">
  ..
  <div class="sidebar">..</div>
  ..
</div>

Пробую применить метод к блогу на Wordpress со стандартной темой 2012. Скрипт подключен в директории js/jquery.autofix_anything.js загружается между <header></header>
Аналогично подключил таблицу стилей autofix_anything.css

Пробовал вызывать функцию изменив ее из-за noConflict() mode.
Соответственно мой вызов внутри тэга script такой:
jQuery(document).ready(function(){
           $(".navbar").autofix_anything();
       });

для HTML темы:
<div id="navbar" class="navbar">
		<nav id="site-navigation" class="main-navigation" role="navigation">
        <script type="text/javascript">jQuery(document).ready(function(){
           $(".navbar").autofix_anything();
       });</script>
			<h3 class="menu-toggle"><?php _e( 'Menu', 'twentytwelve' ); ?></h3>
			<a class="assistive-text" href="#content" title="<?php esc_attr_e( 'Skip to content', 'twentytwelve' ); ?>"><?php _e( 'Skip to content', 'twentytwelve' ); ?></a>
			<?php wp_nav_menu( array( 'theme_location' => 'primary', 'menu_class' => 'nav-menu' ) ); ?>
        </nav><!-- #site-navigation -->

Увы, результатов нет. Причина в неверном вызове функции? может в местоположении? Пробовал в header.php до и после head

ДОПОЛНЕНИЕ. Подключение скрипта и таблицы стилей в functions.php:
function enqueue_and_register_autofix(){
    wp_register_script( 'jquery.autofix_anything.js', get_stylesheet_directory_uri() . '/js/jquery.autofix_anything.js' );
        wp_enqueue_script( 'jquery.autofix_anything.js', get_stylesheet_directory_uri() . '/js/jquery.autofix_anything.js', array( 'jquery'), 'jquery.autofix_anything.js', true );
    }
add_action( 'wp_enqueue_scripts', 'enqueue_and_register_autofix' );

function autofix_anything() {
    if ( ! is_admin() ) {
        wp_enqueue_style( 'autofix_anything.css', get_template_directory_uri() . '/autofix_anything.css' );
    }
}
add_action( 'wp_enqueue_scripts', 'autofix_anything', 11 );


Вызываемая функция:
<script type="text/javascript">jQuery(document).ready(function(){
           jQuery(".navbar").autofix_anything();
       });</script>


Так заработало.
  • Вопрос задан
  • 2631 просмотр
Пригласить эксперта
Ответы на вопрос 1
mlnkv
@mlnkv
JavaScript Developer
смотрите ошибки в консоле (Хром - F12)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы