user2424370
user2424370

Reputation:

Remove css property using jQuery

I am having some problem when trying to remove css properties using jQuery in .js file:

 generateContent: function (point) {
    $(".gm-style-iw .table-round .rows .col").css({ 'transform' : 'none !important' });
        var key = point.key;
        var area = point.area;
        var update = point.update;
        var carparks = point.carparks;

        var content = '<div class="table-round"><div class="header">' + area + '</div><div class="rows"><div class="row row-header"><div class="col center">Development</div><div class="col center">Available Lots</div></div>';
        for (var key2 in carparks) {
            var carpark = carparks[key2];
            var name = carpark.name;
            var lots = carpark.lots;
            var objectId = carpark.objectId;

            content += '<div class="row"><div class="col">' + name + '</div><div id="rtpLot' + objectId + '" class="col center bold">' + lots + '</span></div>';
        }
        content += '</div><div class="footer">Last updated: <span class="lastUpdate">' + update + '</span></div></div>';
        return content;
    },

And my css class look like this:

.gm-style-iw .table-round { padding: 15px 20px; width: 300px; }
.gm-style-iw .table-round .header { font-size: 32px; font-weight: bold; margin: 0 0 15px; }
.gm-style-iw .table-round .rows { color: #333; background: #eee; }
.gm-style-iw .table-round .rows .row { border-top: 1px solid #fff; }
.gm-style-iw .table-round .rows .row-header { background: #495b67; }
.gm-style-iw .table-round .row-header .col { color: #fff; font-weight: bold; } 
.gm-style-iw .table-round .rows .col { display: inline-block; padding: 10px 15px; width: 120px; font-size: 18px; position: relative; top: 50%; transform: translate(-50%,-50%); vertical-align: top; }
.gm-style-iw .table-round .rows .bold { font-weight: bold; }
.gm-style-iw .table-round .rows .center {  text-align: center; }
.table-round .footer { font-size: 13px; font-style:italic; text-align: right; padding: 10px 0 0; background-color: #FFF; }

Basically it works perfectly on chrome but not IE. I wonder why is it so?

Thanks in advance.

EDIT

var content = '<div class="table-round"><div class="header">' + area + '</div><div class="rows"><div class="row row-header"><div class="col center">Development</div><div class="col center">Available Lots</div></div><div></div>';
        for (var key2 in carparks) {
            var carpark = carparks[key2];
            var name = carpark.name;
            var lots = carpark.lots;
            var objectId = carpark.objectId;

            content += '<div class="row"><div class="col">' + name + '</div><div id="rtpLot' + objectId + '" class="col center bold">' + lots + '</div></div>';
        }
        content += '<div class="footer">Last updated: <span class="lastUpdate">' + update + '</span></div>';
        return content;

Upvotes: 0

Views: 490

Answers (1)

stackErr
stackErr

Reputation: 4170

Your HTML is malformed, here is a fix:

    var content = '<div class="table-round">' +
                       '<div class="header">' + area + '</div>' +
                       '<div class="rows">' +
                           '<div class="row row-header">' +
                               '<div class="col center">Development</div>' +
                               '<div class="col center">Available Lots</div>' +
                           '</div>';
    for (var key2 in carparks) {
        var carpark = carparks[key2];
        var name = carpark.name;
        var lots = carpark.lots;
        var objectId = carpark.objectId;

        content += '<div class="row">' +
                        '<div class="col">' + name + '</div>' +
                        '<div id="rtpLot' + objectId + '" class="col center bold">' + lots + '</div>' +
                   '</div>';
    }
    content += '</div>' +
        '<div class="footer">Last updated: <span class="lastUpdate">' + update + '</span></div>' +
    '</div>';
    return content;
},

For your css, you can try:

$(".gm-style-iw .table-round .rows .col").css({ '-ms-transform' : 'none !important' });

OR:

$(".gm-style-iw .table-round .rows .col").attr('style', function(i,s) { return s + 'transform: none !important; -ms-transform: none !important;' });

OR:

$('.gm-style-iw .table-round .rows .col').css('cssText', 'transform: none !important');

Upvotes: 1

Related Questions