无法用jquery加载图像

时间:2018-04-14 10:39:53

标签: javascript jquery image file load

刚开始。我试图从文件夹加载图像。 html和javascript文件与图像位于同一文件夹中,但我仍然无法加载它们。

background.js

1 个答案:

答案 0 :(得分:0)

通过阅读代码,我不完全确定你想要做什么。 如果想法是在页面加载时显示图像,并且在单击图像后,您想要更改它的源并显示#message,那么这应该有效,前提是您有正确的图像路径。

$(function() { 
  // add the image to element
  $('#main').append('<img src="plus.png" alt="click to see the paragraph" id="clickMe" width="100" height="100"/>');
  $('#main').on('click', '#clickMe', function() {
    // check if message is visible, if so, hide it
    if ($(this).hasClass('expanded')) {
      $(this).attr('src', 'plus.png').removeClass('expanded');
      $('#message').hide('slow');
    }
    // otherwise show it
    else {
      $(this).attr('src', 'minus.png').addClass('expanded');
      $('#message').show('fast');
    }
  });
});

编辑: 您的版本无法正常工作的原因是因为.toggle()在页面加载后立即切换,因此它会立即隐藏您的消息。这不是你想要的 - 你想要的是设置一个事件监听器,只有在你点击图像后才能进行隐藏。另一件事 - 你没有在你的例子中设置图像的高度和宽度,所以这可能是一个问题 - 你的图像即使加载也不会显示。

是的,你可以动态添加课程。它们在CSS中定义不是必需的。