通过单击外部文件中的链接将外部文件加载到索引模板中

时间:2019-01-09 15:08:39

标签: jquery html css

上下文: 下面的jquery脚本根据用户单击的链接将外部文件加载到索引模板中的div中。

问题: 外部文件中的链接不遵循jquery脚本或CSS样式,因为它们无法将新的外部文件加载到索引模板内的div

jquery:

$(window).on('load', function() {
    $("#content").load("content/index_content.php");

    $('a').click(function(e){
        e.preventDefault();
        $("#nav div").removeClass("active");
        $(this).children("div").addClass("active");
        $('#content').load($(this).attr('href'));
        return false;
    )};
)};

1 个答案:

答案 0 :(得分:1)

我认为您是指事件委托。 (请参阅:https://learn.jquery.com/events/event-delegation/

您当前的jQuery在窗口加载时运行,因此此后添加的任何元素都没有附加事件。您可以通过将事件侦听器添加到父元素并将事件委托给子元素来解决此问题。

您需要将var map; function initMap() { map = new google.maps.Map(document.getElementById('map'), { center: {lat: 45.518, lng: -122.672}, zoom: 18, mapTypeId: 'satellite', heading: 90, tilt: 45 }); } function rotate90() { var heading = map.getHeading() || 0; map.setHeading(heading + 90); } function autoRotate() { // Determine if we're showing aerial imagery. if (map.getTilt() !== 0) { window.setInterval(rotate90, 3000); } } 更改为$('a').click(function(e){之类,这意味着只要在文档中单击定位标记,该事件就会触发。

例如

$(document).on('click', 'a', function(e) {