所以,我有一个WordPress网站,我在其上安装了一个模板(Zoo)。我的问题是我希望整个网站都是法语,并且该模板中有三个按钮,title
标签在js文件中深入编码,该文件位于已集成到模板中的插件内。 / p>
这是我作为Web开发人员的第一步(我来自C ++),我很难理解文件中缺少的内容,但我通过环顾四周了解了一些事情。
所以我做了一个儿童主题。这是functions.php文件。我认为它工作正常,但这是为了防止我做错了:
<?php
function removethosedamntooltips(){
wp_register_script('removetooltips', get_stylesheet_directory_uri() . '/js/removetooltips.js');
wp_enqueue_script( 'removetooltips' );
}
add_action('wp_enqueue_scripts', 'removethosedamntooltips');
这是前面提到的removetooltips.js文件。我相信我必须要求一个按钮悬停,因为模板是单页面视差,我想要修改的按钮是不可见的,直到你点击另一个按钮允许另一个显示而不将浏览器发送到另一个URL(如果我删除行2和它一起使用的右括号,无论如何都不起作用)。此外,这些工具提示仅在鼠标悬停时出现,因此这似乎是一个好主意:
jQuery(document).ready(function(){
alert("jQuery!!");
jQuery("button").hover(function(){
alert("jQuery!!");
jQuery(".mfp-arrow-left").attr("title", "Précédent (flèche gauche)");
jQuery(".mfp-arrow-right").attr("title", "Suivant (flèche droite)");
jQuery(".mfp-close").attr("title", "Fermer (Esc)");
});
});
加载页面后会显示第一个警报,但第二个警报不会显示。工具提示(按钮标题)仍以英文显示。
一条可能对解决这个问题有用的信息(我只读了两天关于JavaScript和jQuery的东西,所以我真的不知道):我不得不使用jQuery
代替{ {1}}或控制台会告诉我$
是一个未知函数。我是否需要以某种方式在我的文件中包含jQuery框架(如果是,在何处以及如何?),尽管调用jQuery库已经显示在标题中了?
如果您提供的解决方案会删除工具提示而不是替换其内容,我会很高兴。
提前谢谢!
答案 0 :(得分:0)
而不是使用
jQuery("button").hover(function(){...});
你应该找到放置所有按钮的容器,或者只使用body
并使用jquery .on()
方法。据我所知,它会起作用。
所以你的完整代码将是这样的
jQuery(document).ready(function(){
alert("jQuery!!");
jQuery("body").on("hover", "button", function(){
jQuery(".mfp-arrow-left").attr("title", "Précédent (flèche gauche)");
jQuery(".mfp-arrow-right").attr("title", "Suivant (flèche droite)");
jQuery(".mfp-close").attr("title", "Fermer (Esc)");
});
});
<强>说明:强>
使用.on()
方法也可以使用动态创建的元素绑定事件。正如您在问题中提到的那样,在单击另一个按钮/链接之前不会创建按钮。
修改:对此进行了测试及其工作情况。我已经删除了第二个提醒,因为您无法进行测试。