Save time by giving your drivers the ability to submit fuel receipts, search for fuel locations and more with the Penske Driver app, available for Apple or Android.
See and manage your fleet data in real-time, in one place, whether you're on a computer, tablet or phone. Quickly prioritize urgent tasks and identify key performance indicators and trends.
There is no Penske location in search area. Please retry your search.
Pick-Up Locations Not Found
No pick-up locations found in selected area. Please retry your search using an alternate city or ZIP code.
Drop-Off Locations Not Found
No drop-off locations found in selected area. Please retry your search using an alternate city or ZIP code.
No Locations Found
No pick-up or drop-off locations in selected area. Please retry your search using alternate cities or ZIP codes.
System Error, Please Call
Sorry, our site is currently experiencing issues. Please call us at
1-844-847-9577
, or try again later.
No 22' Trucks Available
There is no immediate availability for the truck size you have selected. Would you like to view other available truck sizes or change your dates?
No Trucks Available
There is no immediate availability in your area on the pick-up date you selected. Please call us at
1-844-847-9577
to discuss options..
Locations Not Found
Sorry, we can't find any results in your search area. Please retry your search using an alternate location.
Something Went Wrong
Please try again. If the problem continues, restart your reservation or call
1-844-847-9577
.
Change Time or Call
Online reservations must be made at least 3 hours before pickup in your location’s time zone and must have a minimum duration of 24 hours. To continue, select a new pickup date or call
1-844-906-3404
.
Change Time or Call
Online reservations must be made at least 24 hours before pickup in your location’s time zone and must have a minimum duration of 24 hours. To continue, select a new pickup date or call
1-844-906-3404
.
Change Time or Call
Online reservations must be made at least 48 hours before pickup in your location’s time zone and must have a minimum duration of 24 hours. To continue, select a new pickup date or call
1-844-906-3404
.
Return to Pickup
Location?
It looks like you’ll be staying within 25 miles of your pickup location. Returning your truck to the same location may offer you a lower cost. Would you like to return your truck to the pickup location or keep the selected drop-off spot?
What's the Difference?
Location Options
Different Location(Drop-off at different location)
Same Location(Drop-off at same location)
Return Truck To
Different Location
Same Location
Truck Offers
12', 16', 22', 26' Truck
Cargo Van, 12', 16', 26' Truck
Rental Quote
Pay on a per-trip basis
Pay for the miles/days used
Trip Type
Long Distance, Interstate
Short Distance, Same City
Distance to Destination
Over 25 miles
Within 25 miles
Drop-off Date
Distance determines
drop-off date
Same day to up to 9 days
Mileage
Unlimited Mileage
Pay per mileage used
Additional Days
Up to 3 days: $100 eachUp to three additional days at $100 per day
―
Towing Offered
―
Security Deposit for Credit Card
―
Why Penske
Commercial Rental Trucks
Top 5 Reasons To Rent From Penske
Running a business can be difficult, but renting a truck shouldn't be. With Penske, you get a clean, reliable, fuel-efficient truck ready to go at pickup time. You also get personal help from our professional associates, 24/7 Roadside Assistance, and flexible reservation and cancellation policies. What else does Penske offer? We've put together the top five ways Penske edges out the competition, and why Penske is the place to start when looking for a truck rental.
1. We have some of the best trucks in the industry.
Our commercial rental fleet is known throughout the industry for newer, cleaner trucks. And as one of the largest fleets in the business with more than 75,000 vehicles, including cargo vans, light-duty to medium-duty box trucks, flatbeds, refrigerated trucks, tractors and trailers, we have the resources and the know-how to make sure you get the right vehicle for your needs. Alongside our growing electric vehicle fleet, Penske has also been recognized by the EPA SmartWay® Transport program for its commitment to promoting sustainability in trucking, giving you and your business the option to go green and reduce emissions.
2. We're reliable.
With 11,500 trained technicians and 980 maintenance facilities, our vehicle fleet is one of the youngest and best-maintained in the industry. Our trucks routinely go through Dynamic PM®, our unique data-driven service that delivers the right preventive maintenance at the right time, ensuring that vehicles run efficiently and get the attention they deserve, avoiding breakdowns and preventable repairs.
3. We're convenient and available.
With quick pickup and drop-off at more than 2,000 rental facilities across North America, Penske trucks are easy to find. While some companies promise a truck they can't provide, we pride ourselves on providing the highest level of customer satisfaction while fulfilling the rental obligations we make. And if plans change, you can cancel your reservation at any time with no fees.
4. We provide the top technology to make things easy.
We offer free tools that make it easy to complete daily tasks while staying informed, compliant and connected. Fleet Insight™ gives fleet managers access to real-time data, while the Penske Driver™ app allows drivers to connect quickly and easily inside Penske's rental trucks using Bluetooth®. The Penske Driver app is a free, fully integrated, ELD-compliant custom app that provides drivers with easy Hours of Service (HOS) functionality to meet the electronic logging device (ELD) mandate for rental trucks.
In addition, Penske continues to permit drivers and fleets to use their own portable ELD systems in its rental vehicles. Plus, many of our medium-duty trucks and tractors also benefit from the newest technology, including standard collision mitigation systems, active brake assist, side object detection, adaptive cruise control, stability control, lane departure warnings and more.* Our advanced technology provides you with safety, visibility and control on and off the road.
5. We're there when you need us most.
In the unlikely event of a breakdown, one call to our 24/7 Roadside Assistance team is all you need to get back on the road. When you call, one of our experienced, in-house Penske associates will ensure your driver and load are safe, identify the problem, and dispatch emergency roadside assistance. We maintain communication for complete visibility and provide a comparable substitute vehicle if needed to get you moving as soon as possible. And with our extended network of more than 12,000 qualified service providers, we keep things moving even if you're not near a Penske facility.
Whether you're looking for a strategic business partner to help your business grow, or for help handling a surge, look to Penske for expertise and resources that keep you moving forward.
*While many vehicles will have some form of collision mitigation systems, the presence of such systems cannot be guaranteed. Please check with Penske at the time of rental.
});
});
window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){
const canadaDropoffIcon = document.querySelector(
".rental-widget-form i.canadian-dropoff-element"
);
const canadaDropoffAlert = document.querySelector(
".rental-widget-form .canadian-dropoff"
);
function onOutsideClick(event) {
if (
event.type !== "mouseleave" &&
(
event.target == canadaDropoffIcon ||
event.target == canadaDropoffAlert ||
event.target.closest(".rental-widget-form .canadian-dropoff")
)
) {
return;
}
canadaDropoffAlert.classList.add("hidden");
document.removeEventListener("click", onOutsideClick, { passive: true });
canadaDropoffIcon.removeEventListener("mouseleave", onOutsideClick);
}
function onDropoffIconClick() {
canadaDropoffAlert.classList.remove("hidden");
document.addEventListener("click", onOutsideClick, { passive: true });
canadaDropoffIcon.addEventListener("mouseleave", onOutsideClick);
}
canadaDropoffIcon.addEventListener("click", onDropoffIconClick, {
passive: true,
});
//Change placeholder value for inputs in Topbar
// Function to update the placeholder based on screen size
function updateTopbarValues() {
let widget_TB = document.querySelector('.top-promo .rental-widget-container');
if (widget_TB) {
let pickup_date_TB = document.querySelector('.top-promo .pickup-date-time .dates-fieldset input');
let dropoff_date_TB = document.querySelector('.top-promo .dropoff-date-time .dates-fieldset input');
let pickup_time_head_TB = document.querySelector('.top-promo .pickup-time-select .heading');
let dropoff_time_head_TB = document.querySelector('.top-promo .dropoff-time-select .heading');
let pickup_time_val_TB = document.querySelector('.top-promo .quote_pickup_time_select span');
let dropoff_time_val_TB = document.querySelector('.top-promo .quote_dropoff_time_select span');
if (window.innerWidth < 768) {
pickup_date_TB.placeholder = "Date";
dropoff_date_TB.placeholder = "Date";
pickup_time_head_TB.innerHTML = "Time";
dropoff_time_head_TB.innerHTML = "Time";
if(!pickup_time_val_TB.classList.contains('date-time-val')) {
pickup_time_val_TB.innerHTML = "Time";
}
if(!dropoff_time_val_TB.classList.contains('date-time-val')) {
dropoff_time_val_TB.innerHTML = "Time";
}
} else {
pickup_date_TB.placeholder = "Pick-Up Date";
dropoff_date_TB.placeholder = "Drop-Off Date";
pickup_time_head_TB.innerHTML = "Pick-Up Time";
dropoff_time_head_TB.innerHTML = "Drop-Off Time";
if(!pickup_time_val_TB.classList.contains('date-time-val')) {
pickup_time_val_TB.innerHTML = "Pick-Up Time";
}
if(!dropoff_time_val_TB.classList.contains('date-time-val')) {
dropoff_time_val_TB.innerHTML = "Drop-Off Time";
}
}
}
}
// Initial call to set placeholder based on the screen size
//updateTopbarValues();
// Event listener for resizing the window
//window.addEventListener('resize', updateTopbarValues);
});
window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){
function fixTextWidow(element) {
let wordArray = element.textContent.split(" ");
const filteredArray = wordArray.filter(function(element) {
return element.trim() !== "";
});
if (filteredArray.length > 1) {
filteredArray[filteredArray.length - 2] += " " + filteredArray[filteredArray.length - 1];
filteredArray.pop();
element.innerHTML = filteredArray.join(" ");
}
}
/*REBELMOUSE_STDLIB.createElementChangeListener(".post-header h1 .widget__headline-text", function(element){
fixTextWidow(element);
})*/
REBELMOUSE_STDLIB.createElementChangeListener(".widget__headline .widget__headline-text", function(element){
fixTextWidow(element);
})
REBELMOUSE_STDLIB.createElementChangeListener(".rm-breadcrumb__item:last-of-type .rm-breadcrumb__link", function(element){
fixTextWidow(element);
})
REBELMOUSE_STDLIB.createElementChangeListener(".current-post .body-description h2", function(element){
let spanElement = element.querySelector("span");
let supElem = element.querySelector("sup");
if (spanElement == null && supElem == null) {
fixTextWidow(element);
}
})
REBELMOUSE_STDLIB.createElementChangeListener(".current-post .body-description h3", function(element){
let spanElement = element.querySelector("span");
let supElem = element.querySelector("sup");
if (!element.classList.contains('h3-img') && spanElement == null && supElem == null) {
fixTextWidow(element);
}
})
REBELMOUSE_STDLIB.createElementChangeListener(".current-post .body-description h4", function(element){
fixTextWidow(element);
})
REBELMOUSE_STDLIB.createElementChangeListener(".current-post .body-description .acc-header", function(element){
fixTextWidow(element);
})
REBELMOUSE_STDLIB.createElementChangeListener(".callouts-wrapper .widget__subheadline-text p", function(element){
fixTextWidow(element);
})
REBELMOUSE_STDLIB.createElementChangeListener(".callouts-wrapper .custom-field-callout-title", function(element){
fixTextWidow(element);
})
REBELMOUSE_STDLIB.createElementChangeListener(".sidebar-post .widget__subheadline-text p", function(element){
fixTextWidow(element);
})
REBELMOUSE_STDLIB.createElementChangeListener(".section-header h1.title", function(element){
fixTextWidow(element);
})
REBELMOUSE_STDLIB.createElementChangeListener(".truck-info h2.text-element", function(element){
fixTextWidow(element);
})
REBELMOUSE_STDLIB.createElementChangeListener(".container.trucks h1", function(element){
fixTextWidow(element);
})
REBELMOUSE_STDLIB.createElementChangeListener(".subtitle .text-element", function(element){
fixTextWidow(element);
})
// REVERT WIDOWS ON INDUSTRY ARTICLES COMMERCIAL HOMEPAGE CALLOUTS
function removeNonBreakingSpace(element) {
element.innerHTML = element.innerHTML.replace(/ /g, " ");
}
REBELMOUSE_STDLIB.createElementChangeListener(".industry-articles .widget__headline .widget__headline-text", function(element) {
removeNonBreakingSpace(element);
});
REBELMOUSE_STDLIB.createElementChangeListener(".tag-beverage-manufacturing-industry .widget__headline .widget__headline-text", function(element) {
removeNonBreakingSpace(element);
});
REBELMOUSE_STDLIB.createElementChangeListener(".tag-healthcare-industry .widget__headline .widget__headline-text", function(element) {
removeNonBreakingSpace(element);
});
REBELMOUSE_STDLIB.createElementChangeListener(".no-break", function(element) {
removeNonBreakingSpace(element);
});
});
window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){
function removeEmptyParagraphBeforeDiv() {
// Select all divs with the class "rebellt-item"
document.querySelectorAll('div.rebellt-item').forEach(function(div) {
// Check if the previous sibling is a
element
var prevElem = div.previousElementSibling;
if (prevElem && prevElem.tagName.toLowerCase() === 'p') {
// Check if the
element is empty or contains only or whitespace
if (prevElem.innerHTML.trim() === '' || prevElem.innerHTML.trim() === ' ') {
prevElem.remove(); // Remove the empty
element
}
}
});
}
// Call the function to remove empty
elements before .rebellt-item divs
removeEmptyParagraphBeforeDiv();
});
window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){
//function about single click and double click to open dropdown and redirects in topbar
let navbarLinks = document.querySelectorAll(".right-side .navbar .item .text-element a");
function doubleClick () {
if (window.innerWidth >= 768 && window.innerWidth <= 1199) {
document.querySelector(".topbar-wrapper").classList.add("touch-nav");
REBELMOUSE_STDLIB.createElementChangeListener(".right-side .navbar .item .text-element a", function(el){
let doubleClicked = false;
el.addEventListener("click", (e)=>{
e.preventDefault();
let dropdownDiv = document.querySelectorAll(".right-side .navbar .item .dropdown");
dropdownDiv.forEach((item) => {
item.classList.remove("tablet-dropdown")
})
setTimeout(() => {
let parent = el.parentNode.parentNode;
let dropdown = parent.querySelector(".dropdown");
if (dropdown) {
dropdown.classList.add("tablet-dropdown")
}
},500)
// if doubleclicked is true then redirect to link
if (doubleClicked) {
window.location.href = el.href
}
doubleClicked = true;
setTimeout(() => {
doubleClicked = false;
}, 300);
})
})
document.querySelector("body").addEventListener("click", (e)=>{
let dropdownLinks = document.querySelectorAll(".right-side .navbar .item a");
let isTrue = []
dropdownLinks.forEach((item) => {
if (e.target != item) {
isTrue.push(false)
} else {
isTrue.push(true);
}
})
if (!isTrue.includes(true)) {
document.querySelectorAll(".right-side .navbar .item .dropdown").forEach((item => {
item.classList.remove("tablet-dropdown")
}))
}
//console.log(isTrue);
})
} else {
document.querySelector(".topbar-wrapper").classList.remove("touch-nav")
}
}
doubleClick();
//Open Dropdowns menu with clicks for screen >= 768 && screen <= 1199
window.addEventListener("resize", (event) => {
doubleClick();
});
let scrollPosition = 0; // Store the current scroll position
function disableScroll() {
document.body.style.overflow = 'hidden';
}
function enableScroll() {
document.body.style.overflow = 'unset';
}
REBELMOUSE_STDLIB.createElementChangeListener(".hamburger-wrapper", function(el){
let menuIcon = el.querySelector(".hamburger");
let hamburgerWrapper = el.querySelector('.dark-overlay');
let loginBtn = el.querySelector('.login-icon');
let langBtn = el.querySelector('.language-icon');
let closeBtn = el.querySelector('.close-icon');
let hamLogBlock = el.querySelector('.ham-login-block');
let hamLangBlock = el.querySelector('.ham-lang-block');
let hamSearchBlock = el.querySelector('.ham-search-block');
let searchBtn = el.querySelector('.search-icon');
let searchWidget = el.querySelector('.search-container');
let searchClose = searchWidget.querySelector('.close');
menuIcon.addEventListener('click', () => {
hamburgerWrapper.classList.toggle('hidden');
if(hamburgerWrapper.classList.contains('hidden')) {
enableScroll();
} else {
disableScroll();
}
});
closeBtn.addEventListener('click', () => {
hamburgerWrapper.classList.toggle('hidden');
enableScroll();
});
loginBtn.addEventListener('click', ()=>{
hamLogBlock.classList.toggle("hidden");
hamLangBlock.classList.add('hidden');
hamSearchBlock.classList.add('hidden');
loginBtn.querySelector('.account-bold').classList.toggle("hidden");
loginBtn.querySelector('.account').classList.toggle("hidden");
langBtn.querySelector('.lang').classList.remove("hidden");
langBtn.querySelector('.lang-bold').classList.add("hidden");
searchBtn.querySelector('svg').classList.remove("ham-search-bold");
langBtn.querySelector('.navbar-line').classList.add('hidden');
searchBtn.querySelector('.navbar-line')?.classList?.add('hidden');
loginBtn.querySelector('.navbar-line').classList.toggle('hidden');
})
langBtn.addEventListener('click', ()=>{
hamLogBlock.classList.add("hidden");
hamSearchBlock.classList.add('hidden');
hamLangBlock.classList.toggle('hidden');
loginBtn.querySelector('.account-bold').classList.add("hidden");
loginBtn.querySelector('.account').classList.remove("hidden");
searchBtn.querySelector('svg').classList.remove("ham-search-bold");
langBtn.querySelector('.lang').classList.toggle("hidden");
langBtn.querySelector('.lang-bold').classList.toggle("hidden");
langBtn.querySelector('.navbar-line').classList.toggle('hidden');
searchBtn.querySelector('.navbar-line')?.classList?.add('hidden');
loginBtn.querySelector('.navbar-line').classList.add('hidden');
})
searchBtn.addEventListener('click', () => {
//searchWidget.classList.toggle('hidden');
hamLogBlock.classList.add("hidden");
hamSearchBlock.classList.toggle('hidden');
hamLangBlock.classList.add('hidden');
langBtn.querySelector('.lang').classList.remove("hidden");
loginBtn.querySelector('.account').classList.remove("hidden");
loginBtn.querySelector('.account-bold').classList.add("hidden");
langBtn.querySelector('.lang-bold').classList.add("hidden");
searchBtn.querySelector('.navbar-line')?.classList?.toggle('hidden')
langBtn.querySelector('.navbar-line').classList.add('hidden');
loginBtn.querySelector('.navbar-line').classList.add('hidden');
});
searchBtn.querySelector('svg').classList.add("ham-search-bold");
searchClose.addEventListener('click', () => {
searchWidget.classList.toggle('hidden');
})
})
REBELMOUSE_STDLIB.createElementChangeListener(".ham-links-block .item", function(el){
//console.log(el);
//let right = el.querySelector('.angle-right');
//let left = el.querySelector('.angle-left');
el.addEventListener('click', (e) => {
let text = el.querySelector(".text-element").textContent.toLowerCase();
console.log(text);
let dropdown = el.querySelector('.dropdown');
let header = el.querySelector('.ham-header');
if (e.target == header) {
dropdown.classList.remove('open');
//document.querySelector(".ham-main-links").classList.remove("upd-height");
document.querySelector(".ham-main-links").style.height = `auto`;
} else {
if (dropdown) {
console.log("here here")
dropdown.classList.add('open');
let div_height = dropdown.getBoundingClientRect().height;
console.log(dropdown.getBoundingClientRect().height);
document.querySelector(".ham-main-links").style.height = `${div_height}px`;
/*if (text == "plan your move" || text == "need help?") {
document.querySelector(".ham-main-links").classList.add("upd-height");
}*/
}
}
})
})
REBELMOUSE_STDLIB.createElementChangeListener(".nav-icons .search-icon", function(el){
el.addEventListener('click', (event) => {
let parentNode = el.parentNode;
el.style.outline = "none";
if(el.classList.contains("key-focus")){ el.classList.remove("key-focus")}
let icon = el.querySelector(".search-icon");
el.classList.toggle('select');
let searchBox = document.querySelector('.nav-icons .dropdown.search');
let line = document.querySelector('.nav-search .navbar-line');
if (el.classList.contains('select')) {
searchBox.setAttribute('style', 'display:grid !important');
line.setAttribute('style', 'display:block !important');
} else {
searchBox.setAttribute('style', 'display:none !important');
line.setAttribute('style', 'display:none !important');
}
})
})
//close search desktop dropdown when user click outside of search container
window.addEventListener("click", function(event) {
let iconbtn = document.querySelector(".nav-search .search-icon");
let inputWrapper = document.querySelector(".nav-search #search--definition");
let dropdown = document.querySelector(".nav-search .dropdown.search");
if (event.target == iconbtn || event.target.parentNode == inputWrapper || event.target == dropdown) {
//console.log("same");
} else {
document.querySelector(".nav-icons .search-icon").classList.remove('select');
document.querySelector('.nav-icons .dropdown.search').setAttribute('style', 'display:none !important');
document.querySelector('.nav-search .navbar-line').setAttribute('style', 'display:none !important');
}
//console.log(event.target.parentNode);
});
});
window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){
window.addEventListener("keydown", (e) => {
if(e.key === "Tab"){
REBELMOUSE_STDLIB.createElementChangeListener(".topbar-wrapper .nav-icons svg", function(el){
let item = el.parentNode;
//detec if focus is by tab keyboard
//el.addEventListener("keydown", (e) => {
el.classList.add("key-focus");
//});
el.addEventListener("focusin", (e) => {
//show dropdown
let dropdown = item.querySelector('.dropdown');
if (dropdown) {
//remove keyshow class
document.querySelectorAll(".navbar .dropdown.key-show").forEach((item) => {
item.classList.remove("key-show");
})
dropdown.classList.add("key-show");
}
el.addEventListener("focusout", (e) => {
item.classList.remove("key-focus");
})
})
})
}
//remove focus from default nav.menu-global links
REBELMOUSE_STDLIB.createElementChangeListener(".menu-global a", function(el){
el.tabIndex = '-1';
})
document.querySelector(".top-promo").tabIndex = '0';
REBELMOUSE_STDLIB.createElementChangeListener(".topbar-wrapper .navbar .text-element a", function(el){
//console.log(el);
el.addEventListener("focusin", () => {
let item = el.parentNode.parentNode;
let dropdown = item.querySelector('.dropdown');
if (dropdown) {
//remove keyshow class
document.querySelectorAll(".navbar .dropdown.key-show").forEach((item) => {
item.classList.remove("key-show");
})
dropdown.classList.add("key-show");
}
})
})
REBELMOUSE_STDLIB.createElementChangeListener(".topbar-wrapper", function(el){
el.addEventListener("mouseover", ()=>{
document.querySelectorAll(".navbar .item ").forEach((item)=>{
if(item.querySelector(".dropdown")){
item.querySelector(".dropdown").classList.remove("key-show")
}
})
})
})
REBELMOUSE_STDLIB.createElementChangeListener(".nav-lang a:last-child", function(el){
//console.log(el);
el.addEventListener("focusin", () => {
el.addEventListener("keydown", (e) => {
if(e.key === "Tab"){
e.preventDefault();
//alert("Tab Key Pressed");
el.parentNode.classList.remove("key-show");
document.querySelector(".top-promo").classList.remove("hidden");
document.querySelector(".top-promo").tabIndex = '0';
}
});
})
})
REBELMOUSE_STDLIB.createElementChangeListener(".promo-desktop .all-promo-link", function(el){
el.addEventListener("focusin", () => {
document.querySelector(".all-promotions").style.display = "block";
let lastChild = document.querySelector(".all-promotions .promo-cont:last-child .order-btn");
lastChild.addEventListener("focusin", () => {
lastChild.addEventListener("focusout", () => {
document.querySelector(".all-promotions").style.display = "none";
document.querySelector(".promo-desktop .promo-btn").focus();
})
})
})
})
})
// Remove accessibility to link images when images have text redirecting to the same link
REBELMOUSE_STDLIB.createElementChangeListener("a img", function(el){
let parent = el.parentNode;
if (parent.tagName === 'A') {
parent.setAttribute("tabIndex", "-1");
}
})
// COMMERCIAL WIDGET KEYBOARD ACCESSIBILITY
REBELMOUSE_STDLIB.createElementChangeListener(".booking-container form", function(el){
el.addEventListener('keydown', function(event) {
if (event.key === 'Enter') {
event.preventDefault();
}
});
})
REBELMOUSE_STDLIB.createElementChangeListener(".returnto-input-container input", function(el){
el.addEventListener("keydown", (event)=>{
if(event.key === "Enter") {
el.click();
}
})
})
REBELMOUSE_STDLIB.createElementChangeListener(".booking-container .quote-submit-button button", function(el){
el.addEventListener('keydown', function(event) {
if (event.key === 'Enter') {
el.click();
}
});
})
//remove tabindex of calkendar input
function removeCalendarTabInd(el, section) {
el.addEventListener("focus", () => {
if (document.querySelector(`.${section} .pickup-date-time commercial-date-selector`)) {
document.querySelector(`.${section} .pickup-date-time commercial-date-selector .cr-date-picker__input`).setAttribute("tabindex", "-1");
document.querySelector(`.${section} .dropoff-date-time commercial-date-selector .cr-date-picker__input`).setAttribute("tabindex", "-1");
}
})
}
REBELMOUSE_STDLIB.createElementChangeListener(".home-rental .pickup-container input", function(el){
removeCalendarTabInd(el, "home-rental");
})
REBELMOUSE_STDLIB.createElementChangeListener(".top-promo .pickup-container input", function(el){
removeCalendarTabInd(el, "top-promo");
})
REBELMOUSE_STDLIB.createElementChangeListener(".sidebar .pickup-container input", function(el){
removeCalendarTabInd(el, "sidebar");
})
function keybLocItem(el, section) {
el.setAttribute("tabindex", "0");
el.addEventListener("keydown", (event) => {
if(event.key === 'Enter') {
el.click();
el.parentNode.parentNode.classList.add("hidden");
document.querySelector(`.${section} .pickup-date-time .cr-date-picker__input`).focus();
}
})
}
REBELMOUSE_STDLIB.createElementChangeListener(".home-rental .dropdown-loc .location-item", function(el){
keybLocItem(el, "home-rental")
})
REBELMOUSE_STDLIB.createElementChangeListener(".top-promo .dropdown-loc .location-item", function(el){
keybLocItem(el, "top-promo")
})
REBELMOUSE_STDLIB.createElementChangeListener(".sidebar .dropdown-loc .location-item", function(el){
keybLocItem(el, "sidebar")
})
function keylastLocItem(el, section) {
el.addEventListener('keydown', function(event) {
if (event.key === 'Tab' && event.shiftKey) {
console.log('Shift + Tab was pressed');
} else if (event.key === 'Tab') {
el.parentNode.parentNode.classList.add("hidden");
let commercialCalendar = document.querySelector(`.${section} .pickup-date-time .cr-date-picker__input`);
if(commercialCalendar) {
commercialCalendar.focus();
}
}
});
}
REBELMOUSE_STDLIB.createElementChangeListener(".home-rental .dropdown-loc .location-item:nth-of-type(5)", function(el){
keylastLocItem(el, "home-rental")
})
REBELMOUSE_STDLIB.createElementChangeListener(".top-promo .dropdown-loc .location-item:nth-of-type(5)", function(el){
keylastLocItem(el, "top-promo")
})
REBELMOUSE_STDLIB.createElementChangeListener(".sidebar .dropdown-loc .location-item:nth-of-type(5)", function(el){
keylastLocItem(el, "sidebar")
})
function keyCurrLoc(el, section, inputType) {
el.setAttribute("tabindex", "0");
el.addEventListener("focus", () => {
setTimeout(()=>{
el.parentNode.classList.remove("hidden");
document.querySelector(`.${section} .${inputType} .gmap-loc`).style.display = 'block';
el.addEventListener("keydown", (event) => {
if(event.key === 'Enter') {
el.click();
el.parentNode.classList.add("hidden");
document.querySelector(`.${section} .pickup-date-time .cr-date-picker__input`).focus();
}
if(event.key === 'Tab') {
console.log("is running here in tab")
}
})
},500)
})
}
REBELMOUSE_STDLIB.createElementChangeListener(".home-rental .pickup-container .dropdown-loc .current-loc", function(el){
keyCurrLoc(el, "home-rental", "pickup-container");
})
REBELMOUSE_STDLIB.createElementChangeListener(".top-promo .pickup-container .dropdown-loc .current-loc", function(el){
keyCurrLoc(el, "top-promo", "pickup-container");
})
REBELMOUSE_STDLIB.createElementChangeListener(".sibar .pickup-container .dropdown-loc .current-loc", function(el){
keyCurrLoc(el, "sidebar", "pickup-container");
})
REBELMOUSE_STDLIB.createElementChangeListener(".home-rental .dropoff-container .dropdown-loc .current-loc", function(el){
keyCurrLoc(el, "home-rental", "dropoff-container");
})
REBELMOUSE_STDLIB.createElementChangeListener(".top-promo .dropoff-container .dropdown-loc .current-loc", function(el){
keyCurrLoc(el, "top-promo", "dropoff-container");
})
REBELMOUSE_STDLIB.createElementChangeListener(".sibar .dropoff-container .dropdown-loc .current-loc", function(el){
keyCurrLoc(el, "sidebar", "dropoff-container");
})
let typeTimeSelector, typeSection, widgetSection;
function keycalendarfocus(el, section, calendarSec) {
el.addEventListener("focus", () => {
el.click();
setTimeout(()=> {
//document.querySelector(`.${section} .${calendarSec} .cr-date-range-picker__close-button`).focus();
document.querySelector(`.${section} .dropdown-loc`).classList.add("hidden");
let calendarCells = document.querySelectorAll(`.${section} .${calendarSec} commercial-date-selector .cr-date-range-picker__month-cell`);
calendarCells.forEach((calCell) => {
if (!calCell.classList.contains('cr-date-range-picker__month-cell--disabled') &&
!calCell.classList.contains('cr-date-range-picker__month-cell--empty')) {
calCell.setAttribute("tabindex", "0");
}
calCell.addEventListener("keydown", (event) => {
if (event.key === 'Enter') {
calCell.click();
document.querySelector(`.${section} .${calendarSec} commercial-date-selector .cr-date-range-picker__button`).focus();
setTimeout(()=>{
let timeSelector = document.querySelector(`.${section} .${calendarSec} .quote_pickup_time_select`) || document.querySelector(`.${section} .${calendarSec} .quote_dropoff_time_select`);
typeTimeSelector = timeSelector.className;
typeSection = timeSelector.getAttribute("data-section");
widgetSection = section;
timeSelector.click();
},1000)
}
})
})
},500)
})
}
REBELMOUSE_STDLIB.createElementChangeListener(".home-rental .pickup-date-time commercial-date-selector .cr-date-picker input", function (el) {
keycalendarfocus(el, "home-rental", "pickup-date-time");
})
REBELMOUSE_STDLIB.createElementChangeListener(".home-rental .dropoff-date-time commercial-date-selector .cr-date-picker input", function (el) {
keycalendarfocus(el, "home-rental", "dropoff-date-time");
})
REBELMOUSE_STDLIB.createElementChangeListener(".top-promo .pickup-date-time commercial-date-selector .cr-date-picker input", function (el) {
keycalendarfocus(el, "top-promo", "pickup-date-time");
})
REBELMOUSE_STDLIB.createElementChangeListener(".top-promo .dropoff-date-time commercial-date-selector .cr-date-picker input", function (el) {
keycalendarfocus(el, "top-promo", "dropoff-date-time");
})
REBELMOUSE_STDLIB.createElementChangeListener(".sidebar .pickup-date-time commercial-date-selector .cr-date-picker input", function (el) {
keycalendarfocus(el, "sidebar", "pickup-date-time");
})
REBELMOUSE_STDLIB.createElementChangeListener(".sidebar .dropoff-date-time commercial-date-selector .cr-date-picker input", function (el) {
keycalendarfocus(el, "sidebar", "dropoff-date-time");
})
//close calendar popup by keyboard accessibility
REBELMOUSE_STDLIB.createElementChangeListener("commercial-date-selector .cr-date-range-picker__close-button", function (el) {
el.setAttribute("tabindex", "0");
el.addEventListener("keydown", (event) => {
if (event.key === 'Enter') {
el.click();
}
})
})
function keyTimeVal(el, section, typeTime) {
el.addEventListener("keydown", (event) => {
if(event.key === 'Enter') {
el.click();
let widgetError = document.querySelector(".widget-overlay-error");
if (widgetError.classList.contains("hidden") && typeTime === "quote_widget_pickup-time") {
document.querySelector(`.${section} .dropoff-date-time .cr-date-picker__input`).focus();
} else {
document.querySelector(".widget-overlay-error").focus();
}
}
})
}
REBELMOUSE_STDLIB.createElementChangeListener(".home-rental .date-time-select .quote_widget_pickup-time .time-val", function(el){
keyTimeVal(el, "home-rental", "quote_widget_pickup-time")
})
REBELMOUSE_STDLIB.createElementChangeListener(".home-rental .date-time-select .quote_widget_dropoff-time .time-val", function(el){
keyTimeVal(el, "home-rental", "quote_widget_dropoff-time")
})
REBELMOUSE_STDLIB.createElementChangeListener(".top-promo .date-time-select .quote_widget_pickup-time .time-val", function(el){
keyTimeVal(el, "top-promo", "quote_widget_pickup-time")
})
REBELMOUSE_STDLIB.createElementChangeListener(".top-promo .date-time-select .quote_widget_dropoff-time .time-val", function(el){
keyTimeVal(el, "top-promo", "quote_widget_dropoff-time")
})
REBELMOUSE_STDLIB.createElementChangeListener(".sidebar .date-time-select .quote_widget_pickup-time .time-val", function(el){
keyTimeVal(el, "sidebar", "quote_widget_pickup-time")
})
REBELMOUSE_STDLIB.createElementChangeListener(".sidebar .date-time-select .quote_widget_dropoff-time .time-val", function(el){
keyTimeVal(el, "sidebar", "quote_widget_dropoff-time")
})
REBELMOUSE_STDLIB.createElementChangeListener(".widget-error .error-close", function(el){
el.addEventListener("keydown", (event) => {
if(event.key === 'Enter') {
el.click();
//console.log(document.querySelector(`.${typeSection} .${typeTimeSelector}`));
setTimeout(()=>{document.querySelector(`.${typeSection} .${typeTimeSelector}`).click();},500)
}
})
})
REBELMOUSE_STDLIB.createElementChangeListener(".widget-popup-info .close", function(close){
close.addEventListener("click", () => {
close.parentNode.parentNode.classList.add("hidden");
document.querySelector(".widget-overlay-error").classList.add("hidden");
})
})
let lastInteractionType = null;
// Detect keyboard interactions at the document level
document.addEventListener("keydown", (event) => {
lastInteractionType = 'keyboard';
});
// Detect mouse interactions at the document level
document.addEventListener("mousedown", (event) => {
lastInteractionType = 'mouse';
});
REBELMOUSE_STDLIB.createElementChangeListener(".booking-container .quote_truck_size_select", function(el){
el.setAttribute("tabindex", "0");
// Handle focus event
el.addEventListener("focus", (event) => {
if (lastInteractionType === 'keyboard') {
el.parentNode.querySelector(".truck-options").classList.remove("hidden");
console.log("Keyboard interaction detected, key:", event.key);
} else if (lastInteractionType === 'mouse') {
console.log("Mouse click detected, no need to show options.");
}
lastInteractionType = null;
});
})
REBELMOUSE_STDLIB.createElementChangeListener(".booking-container .truck-sizes-options", function(el){
el.setAttribute("tabindex", "0");
})
REBELMOUSE_STDLIB.createElementChangeListener(".booking-container .compare-option", function(el){
el.setAttribute("tabindex", "0");
el.addEventListener('keydown', function(event) {
if (event.key === 'Tab' && event.shiftKey) {
console.log('Shift + Tab was pressed');
} else if (event.key === 'Tab') {
el.parentNode.parentNode.classList.add("hidden");
}
});
})
// Detect when user has scroll at the end of the what's difference popup to clear linear gradient
let isScrolling;
const scrollContainer = document.querySelector('.popup-scroll-content');
scrollContainer.addEventListener('scroll', function() {
window.clearTimeout(isScrolling);
isScrolling = setTimeout(function() {
const scrollTop = scrollContainer.scrollTop;
const scrollHeight = scrollContainer.scrollHeight;
const offsetHeight = scrollContainer.offsetHeight;
if (scrollTop + offsetHeight >= scrollHeight) {
console.log('User has scrolled to the end of .popup-info-content.');
// scrolling reaches the end
document.querySelector('.popup-info-content').classList.add("remove-gradient");
} else {
console.log('User has not scrolled to the end of .popup-info-content.');
// scrolling stops but hasn't reached the end
document.querySelector('.popup-info-content').classList.remove("remove-gradient")
}
}, 200);
}, false);
});
window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){
window.REBELMOUSE_STDLIB.loadExternalScript("https://rm.gopenske.com/ptr/assets/maint/maintenance.js", function() {
});
});
window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){
window.getCookie = function getCookie(name) {
let matches = document.cookie.match(new RegExp(
"(?:^|; )" + name.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g, '\\$1') + "=([^;]*)"
));
return matches ? decodeURIComponent(matches[1]) : undefined;
}
var isMaintenance = window.getCookie('isMaintenance');
if('Y' == isMaintenance){
document.querySelectorAll(".booking-container").forEach(function (item) {
item.remove();
document.querySelector("body").classList.add("maintenance-y");
});
}
function closeWidgetError(el) {
el.classList.add("hidden");
if (document.querySelector(".widget-overlay-error")) {
document.querySelector(".widget-overlay-error").classList.add("hidden");
}
}
//Close Widget Errors
REBELMOUSE_STDLIB.createElementChangeListener(".widget-error", function(el){
let close_btn = el.querySelector(".error-close");
let blue_btn = el.querySelector(".blue-full-btn");
if (close_btn) {
close_btn.addEventListener("click", ()=>{
closeWidgetError(el);
})
}
if (blue_btn) {
blue_btn.addEventListener("click", ()=>{
closeWidgetError(el);
})
}
})
});
window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){
// Function to get URL parameters
function getUrlParameter(name) {
name = name.replace(/[\[]/, '\\[').replace(/[\]]/, '\\]');
var regex = new RegExp('[\\?&]' + name + '=([^]*)');
var results = regex.exec(location.search);
return results === null ? '' : decodeURIComponent(results[1].replace(/\+/g, ' '));
}
// Function to hide content based on the "userway" parameter
function hideContentBasedOnUserway() {
var userwayParam = getUrlParameter('userway');
if (userwayParam === 'off') {
// Hide the content you want to hide
document.getElementById('userway-override').style.display = 'none';
}
}
// Call the function when the page loads
hideContentBasedOnUserway();
});
window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){
document.querySelector(".widget-overlay-error").addEventListener("click", (event) => {
if(event.target.classList.contains("widget-overlay-error")) {
document.querySelectorAll(".widget-error").forEach((widget) => {
if (!widget.classList.contains("hidden")) {
widget.classList.add("hidden");
}
})
// Add "hidden" class to the clicked element
document.querySelector(".widget-overlay-error").classList.add("hidden");
}
})
});
window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){
document.addEventListener('contextmenu', function(event) {
if (event.target.matches('img, .display-block.image-element, .section-header-full-img, .header-image, svg, .hero-home-texts, .truck-category-headline, .truck-promo, .truck-promo .promo-card-left-container, .truck-category-header')) {
event.preventDefault();
}
});
});
window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){
function getUrlParameter(name) {
const urlParams = new URLSearchParams(window.location.search);
return urlParams.get(name);
}
function setCookie(name, value, days, path) {
const expires = new Date(Date.now() + days * 24 * 60 * 60 * 1000).toUTCString();
//document.cookie = `${name}=${value}; expires=${expires}; path=${path}; domain=pensketruckrental.com`;
document.cookie = `${name}=${value}; expires=${expires}; path=${path}`;
}
function deleteCookie(name) {
document.cookie = `${name}=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;`;
}
(function() {
const clickref = getUrlParameter('clickref');
const partnercode = getUrlParameter('partnercode');
if(clickref && clickref != null) {
setCookie('it_ptr_click_ref_id', clickref, 7, '/');
if(partnercode && partnercode != null) {
setCookie('it_ptr_partner_code', partnercode, 7, '/');
}
deleteCookie('penskelinkid');
deleteCookie('urlRef');
}
})();
});
window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){
(function(d){var s = d.createElement("script");s.setAttribute("data-account", "NRnEL6ljSb");s.setAttribute("src", "https://cdn.userway.org/widget.js");(d.body || d.head).appendChild(s);})(document)
});
window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){
REBELMOUSE_STDLIB.createElementChangeListener(".callouts-wrapper .widget", function(el){
let link = el.querySelector('.snark-line .cross-btn')?.getAttribute('href') || el.querySelector('.snark-line .g-button')?.getAttribute('href');
let title = el.querySelector('.custom-field-callout-title');
let img = el.querySelector('.widget__head a');
let title_text = title.textContent;
if (link) {
img.href = `${link}`;
title.innerHTML = `${title_text}`
}
})
});
window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){
REBELMOUSE_STDLIB.createElementChangeListener(".rebellt-item", function(el){
let headline = el.querySelector('h3[data-role="headline"]');
if (headline) {
headline.addEventListener("click", function(item){
el.classList.toggle("show-description");
})
}
})
});
window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){
window.country = "USCA";
window.phoneFormat = "false";
window.REBELMOUSE_STDLIB.loadExternalScript("https://app-sjo.marketo.com/js/forms2/js/forms2.min.js", function() { window.REBELMOUSE_STDLIB.loadExternalScript("https://epages.gopenske.com/rs/004-RHK-737/images/new-marketo.js", function() {
const allForms = document.querySelectorAll('[id*="mktoForm_"]');
allForms.forEach(function(el){
MktoForms2.loadForm("//app-sjo.marketo.com", "004-RHK-737", el.dataset.formId);
});
});
});
//Add placeholder to Mkto Inputs
// Email input
REBELMOUSE_STDLIB.createElementChangeListener(".mktoFormRow input[type='email']", function(elem){
let parentNode = elem.parentNode;
let labelContent = parentNode.querySelector('label').textContent;
elem.placeholder = `${labelContent}`
})
REBELMOUSE_STDLIB.createElementChangeListener(".mktoFormRow input[type='text']", function(elem){
let parentNode = elem.parentNode;
let labelContent = parentNode.querySelector('label').textContent;
elem.placeholder = `${labelContent}`
})
//Global function to clear selector values
REBELMOUSE_STDLIB.createElementChangeListener(".marketo-hide-on-submit button.clear", function(elem){
elem.addEventListener("click", (e) => {
e.preventDefault();
let parent = elem.parentNode.parentNode;
let selectors = parent.querySelectorAll(".mktoForm select");
let label = parent.querySelectorAll(".mktoForm label");
let inputs = parent.querySelectorAll(".mktoFormRow input");
let textarea = parent.querySelectorAll(".mktoFormRow textarea");
let warningIcon = parent.querySelectorAll(".mktoForm .warning-icon");
let errorText = parent.querySelectorAll(".mktoForm .error-text");
selectors.forEach((item) => {
item.value = "";
item.classList.remove("entered-value");
item.classList.remove("mktoInvalid");
})
label.forEach((item) => {
item.classList.remove("focusin");
item.classList.remove("invalid");
item.style.display = "none";
})
inputs.forEach((item) => {
if(item.getAttribute("name") !== "Call_Center_Campaign__c") {
item.classList.remove("mktoInvalid");
item.value = "";
}
})
textarea.forEach((item) => {
item.value = "";
})
warningIcon.forEach((item) => {
item.classList.add("hidden");
})
errorText.forEach((item) => {
item.classList.add("hidden");
})
})
})
// check if required inputs are empty and show warning
REBELMOUSE_STDLIB.createElementChangeListener(".mktoButtonRow button", function(el){
let requiredInputs = document.querySelectorAll(".mktoForm input[aria-required='true']");
el.addEventListener("click", () => {
requiredInputs.forEach((item) => {
let label = item.parentNode.querySelector("label");
let warningIcon = item.parentNode.querySelector(".warning-icon");
let errorText = item.parentNode.querySelector(".error-text");
if (item.value.length == 0) {
label.classList.add('invalid');
label.style.display = 'block'
label.classList.remove('focusin');
warningIcon.classList.remove('hidden');
errorText.classList.remove('hidden');
}
})
})
})
});
window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){
// Sparefoot rework to open in new window - on Personal Rental Storage page
if (window.location.href.includes('/extras-and-supplies/storage/')) {
document.querySelector('#sparefootSubmit').addEventListener('click', function (event) {
event.preventDefault();
var url = 'https://www.sparefoot.com/search?location=' + document.querySelector('#sparefoot-zip').value + '&stid=279';
window.open(url, '_blank');
});
}
//don't display callouts container when there is 0
REBELMOUSE_STDLIB.createElementChangeListener('.home-posts__container', function (el) {
let posts = el.querySelectorAll('.home-posts');
let value = [];
posts.forEach((item) => {
if (item.hasChildNodes()) {
value.push(true);
} else {
value.push(false);
}
});
if (!value.includes(true)) {
document.querySelector('.home-posts__container').classList.add('hidden');
document.querySelector('.footer').classList.add('add-margin-top');
}
});
});
window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){
window.onclick = function(e){
let element = document.querySelector('.language-selector');
if (element) {
let elemChild = element.querySelector('span');
if(e.target != element && e.target != elemChild) {
element.classList.remove('show-dropdown');
}
}
}
REBELMOUSE_STDLIB.createElementChangeListener(".tabs.dropdown", function(el){
el.addEventListener("click", function(){
el.classList.toggle('show-dropdown')
})
})
});