小编mns*_*sth的帖子

在CSS之前或之后更改SVG填充颜色

我有一个像这样的SVG图形:

a::before { content: url(filename.svg); }
Run Code Online (Sandbox Code Playgroud)

当我将鼠标悬停在标签上时,我真的希望SVG更改填充颜色,而不加载新的SVG文件,就像我现在一样:

a:hover::before { content: url(filename_white.svg); }
Run Code Online (Sandbox Code Playgroud)

这可能是使用JavaScript,jQuery或只是我不知道的纯CSS实现的吗?

谢谢.

javascript css jquery svg pseudo-element

37
推荐指数
4
解决办法
3万
查看次数

有关动态创建的HTML事件的JavaScript问题

我在使用JavaScript定位动态创建的元素时遇到了一些问题.

问题1

缩短的JavaScript代码:

var lightbox = document.createElement('div'),
    nav = document.createElement("nav"),
    imga = document.querySelectorAll(".gallery a");
for (i = 0; i < imga.length; i++) {
    imga[i].addEventListener("click", function() {
        document.body.insertBefore(lightbox, document.body.firstChild);
        lightbox.appendChild(nav);
    });
}
Run Code Online (Sandbox Code Playgroud)

1:现在我想在我的活动上做一个活动<nav>.如何将事件定位到目标#lightbox nav a而不仅仅是#lightbox nav

nav.addEventListener("click", function() {
    // works, but I want to target only the <a> links inside
});
Run Code Online (Sandbox Code Playgroud)

我尝试了很多东西,比如:

var selector = document.querySelectorAll("nav a");
for (i = 0; i < selector.length; i++) {
    selector[i].addEventListener("click", function() {
        // doesn't work because the …
Run Code Online (Sandbox Code Playgroud)

javascript events dynamic onclick javascript-events

5
推荐指数
1
解决办法
128
查看次数

伪造CSS:IE8中使用jQuery/JavaScript的only-child

我有一个菜单:only-child选择器,以便我可以指示子菜单.:后选择器在IE8中运行(我必须支持的唯一旧的IE版本),但是:only-child选择器没有,所以我在每个菜单项上都得到一个箭头,而不仅仅是带有子菜单的箭头.

.menu li > a:after { content: ' ?'; }
.menu li > a:only-child:after { content: ''; }
Run Code Online (Sandbox Code Playgroud)

我想要的是使用jQuery或JavaScript实现这一目标.我不想使用Modernizr或Selectivizr以及所有这些东西,只需要一个代码作为only-child的替代品.

如果你能帮助我,我真的很感激.对于jQuery和JavaScript,我是新手,所以请详细解释.谢谢!

javascript css jquery css-selectors internet-explorer-8

3
推荐指数
1
解决办法
941
查看次数

PHP中的jQuery/JavaScript输出

我有一个jQuery代码,应该在新闻文章的每个段落之后插入一些内容.像这样:

$(document).ready(function() {
    $("<a>The link inserted in jQuery</a>")
        .insertAfter("p")
        .attr("href", "http://bi.ng")
        .addClass("abonnerreklame")
    ;
});
Run Code Online (Sandbox Code Playgroud)

它适用于我制作的小提琴,但不适用于我的实际网站.背后的原因,必须是文章使用动态PHP来呈现(WordPress):

<?php the_content(); ?>
Run Code Online (Sandbox Code Playgroud)

有没有办法让JavaScript工作,即使输出是从PHP生成的?我希望你能理解我的问题 - 如果你有这方面的知识,请帮忙.

顺便说一句,是我的测试网站.

谢谢!

html javascript php jquery

0
推荐指数
1
解决办法
83
查看次数

XMLHttpRequest()JSON抛出网络错误但类似的jQuery .getJSON代码有效

我有一个从外部网站加载的JSON脚本.在最简单的形式中,代码就像这样(并且正在工作):

jQuery.getJSON("http://adressesok.posten.no/api/v1/postal_codes.json?postal_code=" + document.querySelector("input").value + "&callback=?",
    function(data){
        document.querySelector("output").textContent = data.postal_codes[0].city;
    });
Run Code Online (Sandbox Code Playgroud)

但是,网站所有者不希望jQuery,如果它不是至关重要的,所以我重新编写.getJSONrequest = new XMLHttpRequest();模型:

request = new XMLHttpRequest();
request.open("GET", "http://adressesok.posten.no/api/v1/postal_codes.json?postal_code=" + document.querySelector("input").value + "&callback=?", true);
request.onload = function() {
    var data = JSON.parse(request.responseText);
    document.querySelector("output").textContent = data.postal_codes[0].city; 
};
request.onerror = function() { /* this gets called every time */ };
Run Code Online (Sandbox Code Playgroud)

我已多次修改我的代码,一遍又一遍地阅读文档,但该.onerror函数是唯一一个始终显示的函数.这是控制台:

IE11控制台中的错误

其中挪威语说这个脚本请求CORS,它无法在Access-Control-Allow-Origin的头部找到原点,并且XMLHttpRequest有网络错误,并说"无法访问".

可能有几个原因导致这种情况发生:

1:新代码有问题

2:.getJSON jQuery函数中有一些东西(黑客?)可以防止错误发生

3:我忘记添加的新代码中有一些关键的东西

4:我的浏览器有一些东西(IE 11目前)

5:还有别的吗?

在这方面有一些帮助会很可爱.

演示:http://jsbin.com/muxigulegi/1/

javascript ajax jquery json

0
推荐指数
1
解决办法
2154
查看次数